summaryrefslogtreecommitdiffstats
path: root/meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch')
-rw-r--r--meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch b/meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch
new file mode 100644
index 0000000000..4baf905b71
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gconf-3.2.3/backenddir.patch
@@ -0,0 +1,43 @@
+Allow the backend directory to be specified from the environment. This is
+required so we can relocate gconf-native to different paths and still
+allow it to work.
+
+Upstream-Status: Pending
+
+RP 2011/11/23
+
+Index: GConf-3.2.3/gconf/gconf-backend.c
+===================================================================
+--- GConf-3.2.3.orig/gconf/gconf-backend.c 2011-07-01 14:01:20.000000000 +0100
++++ GConf-3.2.3/gconf/gconf-backend.c 2011-11-23 14:56:37.141293320 +0000
+@@ -21,6 +21,7 @@
+ #include <config.h>
+ #include "gconf-backend.h"
+ #include "gconf-internals.h"
++#include <stdlib.h>
+ #include <stdio.h>
+ #include <string.h>
+ #include <sys/stat.h>
+@@ -171,6 +172,7 @@
+ gchar* back;
+ gchar* file;
+ gchar* retval;
++ const gchar* backenddir;
+
+ g_return_val_if_fail(address != NULL, NULL);
+
+@@ -179,9 +181,13 @@
+ if (back == NULL)
+ return NULL;
+
++ backenddir = getenv("GCONF_BACKEND_DIR");
++ if (backenddir == NULL)
++ backenddir = GCONF_BACKEND_DIR;
++
+ file = g_strconcat("gconfbackend-", back, NULL);
+
+- retval = g_module_build_path(GCONF_BACKEND_DIR, file);
++ retval = g_module_build_path(backenddir, file);
+
+ g_free(back);
+