diff options
author | Bastien Nocera <hadess@hadess.net> | 2018-02-23 13:08:05 +0100 |
---|---|---|
committer | Bastien Nocera <hadess@hadess.net> | 2018-02-27 16:29:33 +0100 |
commit | 85e162fefee35efdd1f976c06faeb1c98fcd6962 (patch) | |
tree | cd37554884513092ddd2019937a222178ba29bcb | |
parent | 522640a6df95312669871e4f881afe4e37e495f9 (diff) | |
download | gnome-settings-daemon-85e162fefee35efdd1f976c06faeb1c98fcd6962.tar.gz |
xsettings: Use temporary variable for GTK+ modules dir
So that we can override it later.
https://bugzilla.gnome.org/show_bug.cgi?id=786694
-rw-r--r-- | plugins/xsettings/gsd-xsettings-gtk.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/plugins/xsettings/gsd-xsettings-gtk.c b/plugins/xsettings/gsd-xsettings-gtk.c index 960343cc..334626fb 100644 --- a/plugins/xsettings/gsd-xsettings-gtk.c +++ b/plugins/xsettings/gsd-xsettings-gtk.c @@ -29,6 +29,8 @@ #define GTK_MODULES_DISABLED_KEY "disabled-gtk-modules" #define GTK_MODULES_ENABLED_KEY "enabled-gtk-modules" +static const char *modules_path = NULL; + enum { PROP_0, PROP_GTK_MODULES @@ -153,7 +155,7 @@ get_gtk_modules_from_dir (GsdXSettingsGtk *gtk) GFileInfo *info; GHashTable *ht; - file = g_file_new_for_path (GTK_MODULES_DIRECTORY); + file = g_file_new_for_path (modules_path); info = g_file_query_info (file, G_FILE_ATTRIBUTE_TIME_MODIFIED, G_FILE_QUERY_INFO_NONE, @@ -177,7 +179,7 @@ get_gtk_modules_from_dir (GsdXSettingsGtk *gtk) gtk->priv->dir_modules = NULL; } - dir = g_dir_open (GTK_MODULES_DIRECTORY, 0, NULL); + dir = g_dir_open (modules_path, 0, NULL); if (dir == NULL) goto bail; @@ -187,7 +189,7 @@ get_gtk_modules_from_dir (GsdXSettingsGtk *gtk) char *path; char *module; - path = g_build_filename (GTK_MODULES_DIRECTORY, name, NULL); + path = g_build_filename (modules_path, name, NULL); module = process_desktop_file (path, gtk); if (module != NULL) g_hash_table_insert (ht, module, NULL); @@ -288,9 +290,11 @@ gsd_xsettings_gtk_init (GsdXSettingsGtk *gtk) gtk->priv->settings = g_settings_new (XSETTINGS_PLUGIN_SCHEMA); + modules_path = GTK_MODULES_DIRECTORY; + get_gtk_modules_from_dir (gtk); - file = g_file_new_for_path (GTK_MODULES_DIRECTORY); + file = g_file_new_for_path (modules_path); gtk->priv->monitor = g_file_monitor (file, G_FILE_MONITOR_NONE, NULL, |