[oe-commits] [openembedded-core] 09/23: gconf: fix saving of settings when config folder doesnt exist

git at git.openembedded.org git at git.openembedded.org
Fri Apr 13 15:59:12 UTC 2018


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master
in repository openembedded-core.

commit 4d16fa05e47ccc8425ebb085c295d7d8dca6b2e6
Author: Jaewon Lee <jaewon.lee at xilinx.com>
AuthorDate: Tue Apr 10 14:26:47 2018 -0700

    gconf: fix saving of settings when config folder doesnt exist
    
    In some circumstances, gconf isn't able to save configurations
    because ~/.config folder aka root_dir doesn't exist.
    
    For example when saving settings using matchbox-appearance,
    the following error is shown:
    
    GConf Error: Configuration server couldn't be contacted: D-BUS error:
    Can't overwrite existing read-only value: Value for
    `/desktop/poky/interface/font_name' set in a read-only source at the
    front of your configuration path
    
    This issue was not seen before because ~/.config directory is shared
    between several packages and one of those packages usually creates it
    by the time gconf wants to use it.
    
    This patch makes sure that gconf creates the .config directory if it
    doesn't exist, along with the gconf directory inside it.
    
    [YOCTO #12632]
    
    Signed-off-by: Alejandro Hernandez <alejandr at xilinx.com>
    Signed-off-by: Jaewon Lee <jaewon.lee at xilinx.com>
    Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 .../gnome/gconf/create_config_directory.patch      | 28 ++++++++++++++++++++++
 meta/recipes-gnome/gnome/gconf_3.2.6.bb            |  1 +
 2 files changed, 29 insertions(+)

diff --git a/meta/recipes-gnome/gnome/gconf/create_config_directory.patch b/meta/recipes-gnome/gnome/gconf/create_config_directory.patch
new file mode 100644
index 0000000..cd72e73
--- /dev/null
+++ b/meta/recipes-gnome/gnome/gconf/create_config_directory.patch
@@ -0,0 +1,28 @@
+Upstream-Status: Pending
+
+In some circumstances, gconf isn't able to save configurations
+because ~/.config folder aka root_dir doesn't exist.
+This issue was not seen before because ~/.config directory is shared
+between several packages and one of those packages usually creates it
+by the time gconf wants to use it.
+
+This patch makes sure that gconf creates the .config directory if it
+doesn't exist, along with the gconf directory inside it.
+
+Signed-off-by: Jaewon Lee <jaewon.lee at xilinx.com>
+Signed-off-by: Alejandro Hernandez <alejandr at xilinx.com>
+
+
+Index: GConf-3.2.6/backends/markup-backend.c
+===================================================================
+--- GConf-3.2.6.orig/backends/markup-backend.c
++++ GConf-3.2.6/backends/markup-backend.c
+@@ -276,7 +276,7 @@ resolve_address (const char *address,
+       /* dir_mode without search bits */
+       file_mode = dir_mode & (~0111);
+     }
+-  else if (g_mkdir (root_dir, dir_mode) < 0)
++  else if (g_mkdir_with_parents (root_dir, dir_mode) < 0)
+     {
+       /* Error out even on EEXIST - shouldn't happen anyway */
+       gconf_set_error (err, GCONF_ERROR_FAILED,
diff --git a/meta/recipes-gnome/gnome/gconf_3.2.6.bb b/meta/recipes-gnome/gnome/gconf_3.2.6.bb
index 92fd12c..120ae3e 100644
--- a/meta/recipes-gnome/gnome/gconf_3.2.6.bb
+++ b/meta/recipes-gnome/gnome/gconf_3.2.6.bb
@@ -11,6 +11,7 @@ inherit gnomebase gtk-doc gettext gobject-introspection gio-module-cache
 SRC_URI = "${GNOME_MIRROR}/GConf/${@gnome_verdir("${PV}")}/GConf-${PV}.tar.xz;name=archive \
            file://remove_plus_from_invalid_characters_list.patch \
            file://unable-connect-dbus.patch \
+           file://create_config_directory.patch \
 "
 
 SRC_URI[archive.md5sum] = "2b16996d0e4b112856ee5c59130e822c"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list