summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/openscad.cc4
-rw-r--r--src/parsersettings.cc5
-rw-r--r--src/parsersettings.h2
-rw-r--r--tests/cgalcachetest.cc2
-rw-r--r--tests/csgtexttest.cc2
-rw-r--r--tests/modulecachetest.cc2
6 files changed, 9 insertions, 8 deletions
diff --git a/src/openscad.cc b/src/openscad.cc
index 3fddd5e..d53cdb4 100644
--- a/src/openscad.cc
+++ b/src/openscad.cc
@@ -206,7 +206,7 @@ int cmdline(const char *deps_output_file, const std::string &filename, Camera &c
#else
const std::string application_path = boosty::stringy(boosty::absolute(boost::filesystem::path(argv[0]).parent_path()));
#endif
- parser_init(application_path, false);
+ parser_init(application_path);
Tree tree;
#ifdef ENABLE_CGAL
CGALEvaluator cgalevaluator(tree);
@@ -516,7 +516,7 @@ int gui(vector<string> &inputFiles, const fs::path &original_path, int argc, cha
qexamplesdir = exdir.path();
}
MainWindow::setExamplesDir(qexamplesdir);
- parser_init(app_path.toLocal8Bit().constData(), true);
+ parser_init(app_path.toLocal8Bit().constData());
#ifdef Q_WS_MAC
installAppleEventHandlers();
diff --git a/src/parsersettings.cc b/src/parsersettings.cc
index de1ff98..ba4a223 100644
--- a/src/parsersettings.cc
+++ b/src/parsersettings.cc
@@ -88,7 +88,7 @@ fs::path find_valid_path(const fs::path &sourcepath,
return fs::path();
}
-void parser_init(const std::string &applicationpath, bool isgui)
+void parser_init(const std::string &applicationpath)
{
// Add paths from OPENSCADPATH before adding built-in paths
const char *openscadpaths = getenv("OPENSCADPATH");
@@ -117,7 +117,8 @@ void parser_init(const std::string &applicationpath, bool isgui)
fs::path tmpdir;
#ifdef __APPLE__
// Libraries can be bundled on Mac. If not, fall back to development layout
- if (isgui) {
+ bool isbundle = is_directory(libdir / ".." / "Resources");
+ if (isbundle) {
libdir /= "../Resources";
if (!is_directory(libdir / "libraries")) libdir /= "../../..";
}
diff --git a/src/parsersettings.h b/src/parsersettings.h
index 2aef85b..52172b6 100644
--- a/src/parsersettings.h
+++ b/src/parsersettings.h
@@ -6,7 +6,7 @@
extern int parser_error_pos;
-void parser_init(const std::string &applicationpath, bool isgui);
+void parser_init(const std::string &applicationpath);
void add_librarydir(const std::string &libdir);
fs::path search_libs(const fs::path &localpath);
fs::path find_valid_path(const fs::path &sourcepath,
diff --git a/tests/cgalcachetest.cc b/tests/cgalcachetest.cc
index 598879c..67d3313 100644
--- a/tests/cgalcachetest.cc
+++ b/tests/cgalcachetest.cc
@@ -126,7 +126,7 @@ int main(int argc, char **argv)
currentdir = boosty::stringy(fs::current_path());
- parser_init(boosty::stringy(fs::path(argv[0]).branch_path()), false);
+ parser_init(boosty::stringy(fs::path(argv[0]).branch_path()));
add_librarydir(boosty::stringy(fs::path(argv[0]).branch_path() / "../libraries"));
ModuleContext top_ctx;
diff --git a/tests/csgtexttest.cc b/tests/csgtexttest.cc
index 0be3123..97902f6 100644
--- a/tests/csgtexttest.cc
+++ b/tests/csgtexttest.cc
@@ -77,7 +77,7 @@ int main(int argc, char **argv)
currentdir = boosty::stringy( fs::current_path() );
- parser_init(boosty::stringy(fs::path(argv[0]).branch_path()), false);
+ parser_init(boosty::stringy(fs::path(argv[0]).branch_path()));
add_librarydir(boosty::stringy(fs::path(argv[0]).branch_path() / "../libraries"));
ModuleContext top_ctx;
diff --git a/tests/modulecachetest.cc b/tests/modulecachetest.cc
index 423cffc..5531461 100644
--- a/tests/modulecachetest.cc
+++ b/tests/modulecachetest.cc
@@ -73,7 +73,7 @@ int main(int argc, char **argv)
currentdir = boosty::stringy( fs::current_path() );
- parser_init(boosty::stringy(fs::path(argv[0]).branch_path()), false);
+ parser_init(boosty::stringy(fs::path(argv[0]).branch_path()));
add_librarydir(boosty::stringy(fs::path(argv[0]).branch_path() / "../libraries"));
ModuleContext top_ctx;
contact: Jan Huwald // Impressum