define CHARSETALIASDIR (again) to stop various bits of the GNU stack from loading a charset.alias file that we did not provide; slightly rearrange logic of fixup_bundle() so that we can do more stuff even if we can't write to the user ardour conf dir (as in 2.X)
git-svn-id: svn://localhost/ardour2/branches/3.0@12771 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
a8237f1aed
commit
a11d9d4e5a
@ -184,8 +184,7 @@ fixup_bundle_environment (int, char* [])
|
|||||||
if (g_mkdir_with_parents (userconfigdir.c_str(), 0755) < 0) {
|
if (g_mkdir_with_parents (userconfigdir.c_str(), 0755) < 0) {
|
||||||
error << string_compose (_("cannot create user ardour folder %1 (%2)"), userconfigdir, strerror (errno))
|
error << string_compose (_("cannot create user ardour folder %1 (%2)"), userconfigdir, strerror (errno))
|
||||||
<< endmsg;
|
<< endmsg;
|
||||||
return;
|
} else {
|
||||||
}
|
|
||||||
|
|
||||||
path = Glib::build_filename (userconfigdir, "pango.rc");
|
path = Glib::build_filename (userconfigdir, "pango.rc");
|
||||||
std::ofstream pangorc (path.c_str());
|
std::ofstream pangorc (path.c_str());
|
||||||
@ -199,16 +198,10 @@ fixup_bundle_environment (int, char* [])
|
|||||||
|
|
||||||
setenv ("PANGO_RC_FILE", path.c_str(), 1);
|
setenv ("PANGO_RC_FILE", path.c_str(), 1);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// gettext charset aliases XXX do we really need this, since the path
|
setenv ("CHARSETALIASDIR", dir_path.c_str(), 1);
|
||||||
// is totally wrong?
|
|
||||||
|
|
||||||
setenv ("CHARSETALIASDIR", path.c_str(), 1);
|
|
||||||
|
|
||||||
setenv ("FONTCONFIG_FILE", Glib::build_filename (bundle_dir, "Resources/fonts.conf").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);
|
setenv ("GDK_PIXBUF_MODULE_FILE", Glib::build_filename (bundle_dir, "Resources/gdk-pixbuf.loaders").c_str(), 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -280,8 +273,7 @@ fixup_bundle_environment (int /*argc*/, char* argv[])
|
|||||||
if (g_mkdir_with_parents (userconfigdir.c_str(), 0755) < 0) {
|
if (g_mkdir_with_parents (userconfigdir.c_str(), 0755) < 0) {
|
||||||
error << string_compose (_("cannot create user ardour folder %1 (%2)"), userconfigdir, strerror (errno))
|
error << string_compose (_("cannot create user ardour folder %1 (%2)"), userconfigdir, strerror (errno))
|
||||||
<< endmsg;
|
<< endmsg;
|
||||||
return;
|
} else {
|
||||||
}
|
|
||||||
|
|
||||||
path = Glib::build_filename (userconfigdir, "pango.rc");
|
path = Glib::build_filename (userconfigdir, "pango.rc");
|
||||||
std::ofstream pangorc (path.c_str());
|
std::ofstream pangorc (path.c_str());
|
||||||
@ -303,6 +295,13 @@ fixup_bundle_environment (int /*argc*/, char* argv[])
|
|||||||
setenv ("GDK_PIXBUF_MODULE_FILE", Glib::build_filename (userconfigdir, "gdk-pixbuf.loaders").c_str(), 1);
|
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
|
#endif
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
|
Loading…
Reference in New Issue
Block a user