From: Changqing Li <changqing...@windriver.com>

Reproduce steps:
1. add below config into local.conf
   IMAGE_INSTALL_append = " packagegroup-xfce-base"
   DISTRO_FEATURES_append = " polkit"
2. bitbake core-image-minimal

do_rootfs failed with below error:

qemu-i386 -r 3.2.0 -E 
LD_LIBRARY_PATH=/tmp/work/qemux86-poky-linux/core-image-minimal/1.0-r0/rootfs/usr/lib:/tmp/work/qemux86-poky-linux/core-image-minimal/1.0-r0/rootfs/lib
 -L /tmp/work/qemux86-poky-linux/core-image-minimal/1.0-r0/rootfs 
/tmp/work/qemux86-poky-linux/core-image-minimal/1.0-r0/rootfs/usr/lib/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders

** (process:162531): CRITICAL **: 02:10:12.174: Failed to get connection to 
xfconfd: Cannot autolaunch D-Bus without X11 $DISPLAY

Signey-off-by: Changqing Li <changqing...@windriver.com>
---
 ...001-gdk-pixbuf-fix-run-query-loaders-fail.patch | 59 ++++++++++++++++++++++
 meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb |  1 +
 2 files changed, 60 insertions(+)
 create mode 100644 
meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-gdk-pixbuf-fix-run-query-loaders-fail.patch

diff --git 
a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-gdk-pixbuf-fix-run-query-loaders-fail.patch
 
b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-gdk-pixbuf-fix-run-query-loaders-fail.patch
new file mode 100644
index 0000000..836dcae
--- /dev/null
+++ 
b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf/0001-gdk-pixbuf-fix-run-query-loaders-fail.patch
@@ -0,0 +1,59 @@
+From fa0d2ba51f1ccc848da9ff708c23a76b22c6e764 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing...@windriver.com>
+Date: Thu, 28 Mar 2019 17:27:45 +0800
+Subject: [PATCH] gdk-pixbuf: fix run query-loaders fail
+
+run query-loaders fail with error:
+
+** (process:417595): CRITICAL **: 09:21:35.330: Failed to
+get connection to xfconfd: Cannot autolaunch D-Bus without X11 $DISPLAY
+
+Commit 
https://github.com/GNOME/gdk-pixbuf/commit/49d4becc33ca6bc99199dc845f3413e16eeb7f53
+change method of getting pixbuf_libdir, but call of function 
g_file_new_for_path 
+make this error happen, fix by only use g_file_new_for_path for WIN32, 
+for other platform, still use g_strdup.
+
+Maybe this fix just like a workaround, and have send upstream for review.
+
+Upstream-Status: Submitted 
[https://gitlab.gnome.org/GNOME/gdk-pixbuf/merge_requests/44]
+
+Signed-off-by: Changqing Li <changqing...@windriver.com>
+---
+ gdk-pixbuf/queryloaders.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/gdk-pixbuf/queryloaders.c b/gdk-pixbuf/queryloaders.c
+index b813d99..59d62f7 100644
+--- a/gdk-pixbuf/queryloaders.c
++++ b/gdk-pixbuf/queryloaders.c
+@@ -316,15 +316,14 @@ int main (int argc, char **argv)
+         GString *contents;
+         gchar *cache_file = NULL;
+         gint first_file = 1;
+-        GFile *pixbuf_libdir_file;
+         gchar *pixbuf_libdir;
+         gboolean success = TRUE;
+ 
+ #ifdef G_OS_WIN32
++        GFile *pixbuf_libdir_file;
+         gchar *libdir;
+         GFile *pixbuf_prefix_file;
+         gchar *pixbuf_prefix;
+-#endif
+ 
+         /* An intermediate GFile here will convert all the path separators
+          * to the right one used by the platform
+@@ -332,6 +331,10 @@ int main (int argc, char **argv)
+         pixbuf_libdir_file = g_file_new_for_path (PIXBUF_LIBDIR);
+         pixbuf_libdir = g_file_get_path (pixbuf_libdir_file);
+         g_object_unref (pixbuf_libdir_file);
++#else
++        pixbuf_libdir = g_strdup (PIXBUF_LIBDIR);
++#endif
++
+ 
+ #ifdef G_OS_WIN32
+         pixbuf_prefix_file = g_file_new_for_path (GDK_PIXBUF_PREFIX);
+-- 
+2.7.4
+
diff --git a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb 
b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb
index c5de7a9..6435473 100644
--- a/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb
+++ b/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb
@@ -20,6 +20,7 @@ SRC_URI = 
"${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \
            
file://0001-Fix-a-couple-of-decisions-around-cross-compilation.patch \
            file://0001-loaders.cache-depend-on-loaders-being-fully-build.patch 
\
            file://0004-Do-not-run-tests-when-building.patch \
+           file://0001-gdk-pixbuf-fix-run-query-loaders-fail.patch \
            "
 
 SRC_URI_append_class-target = " \
-- 
2.7.4

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to