std::string path;
std::string exec_dir = Glib::path_get_dirname (execpath);
std::string bundle_dir;
- std::string userconfigdir = user_config_directory().to_string();
+ std::string userconfigdir = user_config_directory();
bundle_dir = Glib::path_get_dirname (exec_dir);
unsetenv ("GTK_RC_FILES");
if (!ARDOUR::translations_are_disabled ()) {
- expoirt_search_path (bundle_dir, "GTK_LOCALEDIR", "/Resources/locale");
+ export_search_path (bundle_dir, "GTK_LOCALEDIR", "/Resources/locale");
}
/* write a pango.rc file and tell pango to use it. we'd love
if (g_mkdir_with_parents (userconfigdir.c_str(), 0755) < 0) {
error << string_compose (_("cannot create user ardour folder %1 (%2)"), userconfigdir, strerror (errno))
<< endmsg;
- return;
- }
-
- path = Glib::build_filename (userconfigdir, "pango.rc");
- std::ofstream pangorc (path.c_str());
- if (!pangorc) {
- error << string_compose (_("cannot open pango.rc file %1") , path) << endmsg;
} else {
- pangorc << "[Pango]\nModuleFiles="
- << Glib::build_filename (bundle_dir, "Resources/pango.modules")
- << endl;
- pangorc.close ();
-
- setenv ("PANGO_RC_FILE", path.c_str(), 1);
+
+ path = Glib::build_filename (userconfigdir, "pango.rc");
+ std::ofstream pangorc (path.c_str());
+ if (!pangorc) {
+ error << string_compose (_("cannot open pango.rc file %1") , path) << endmsg;
+ } else {
+ pangorc << "[Pango]\nModuleFiles="
+ << Glib::build_filename (bundle_dir, "Resources/pango.modules")
+ << endl;
+ pangorc.close ();
+
+ setenv ("PANGO_RC_FILE", path.c_str(), 1);
+ }
}
-
- // gettext charset aliases XXX do we really need this, since the path
- // is totally wrong?
-
- setenv ("CHARSETALIASDIR", path.c_str(), 1);
-
+
+ setenv ("CHARSETALIASDIR", bundle_dir.c_str(), 1);
setenv ("FONTCONFIG_FILE", Glib::build_filename (bundle_dir, "Resources/fonts.conf").c_str(), 1);
-
- // GDK Pixbuf loader module file
-
setenv ("GDK_PIXBUF_MODULE_FILE", Glib::build_filename (bundle_dir, "Resources/gdk-pixbuf.loaders").c_str(), 1);
}
std::string path;
std::string dir_path = Glib::path_get_dirname (Glib::path_get_dirname (argv[0]));
- std::string userconfigdir = user_config_directory().to_string();
+ std::string userconfigdir = user_config_directory();
/* note that this function is POSIX/Linux specific, so using / as
a dir separator in this context is just fine.
if (g_mkdir_with_parents (userconfigdir.c_str(), 0755) < 0) {
error << string_compose (_("cannot create user ardour folder %1 (%2)"), userconfigdir, strerror (errno))
<< endmsg;
- return;
- }
-
- path = Glib::build_filename (userconfigdir, "pango.rc");
- std::ofstream pangorc (path.c_str());
- if (!pangorc) {
- error << string_compose (_("cannot open pango.rc file %1") , path) << endmsg;
} else {
- pangorc << "[Pango]\nModuleFiles="
- << Glib::build_filename (userconfigdir, "pango.modules")
- << endl;
- pangorc.close ();
+
+ path = Glib::build_filename (userconfigdir, "pango.rc");
+ std::ofstream pangorc (path.c_str());
+ if (!pangorc) {
+ error << string_compose (_("cannot open pango.rc file %1") , path) << endmsg;
+ } else {
+ pangorc << "[Pango]\nModuleFiles="
+ << Glib::build_filename (userconfigdir, "pango.modules")
+ << endl;
+ pangorc.close ();
+ }
+
+ setenv ("PANGO_RC_FILE", path.c_str(), 1);
+
+ /* similar for GDK pixbuf loaders, but there's no RC file required
+ to specify where it lives.
+ */
+
+ setenv ("GDK_PIXBUF_MODULE_FILE", Glib::build_filename (userconfigdir, "gdk-pixbuf.loaders").c_str(), 1);
}
-
- setenv ("PANGO_RC_FILE", path.c_str(), 1);
- /* similar for GDK pixbuf loaders, but there's no RC file required
- to specify where it lives.
- */
-
- setenv ("GDK_PIXBUF_MODULE_FILE", Glib::build_filename (userconfigdir, "gdk-pixbuf.loaders").c_str(), 1);
+ /* this doesn't do much but setting it should prevent various parts of the GTK/GNU stack
+ from looking outside the bundle to find the charset.alias file.
+ */
+ setenv ("CHARSETALIASDIR", dir_path.c_str(), 1);
+
}
#endif