Patchwork [1/1] gnome-keyring: fix gsettings_data_convert seg fault

login
register
mail settings
Submitter Zhai, Edwin
Date Dec. 27, 2011, 1:06 p.m.
Message ID <3bdd615755d7a911dbee7aaa2c86043c0caa351b.1324991041.git.edwin.zhai@intel.com>
Download mbox | patch
Permalink /patch/17675/
State New
Headers show

Comments

Zhai, Edwin - Dec. 27, 2011, 1:06 p.m.
From: Zhai Edwin <edwin.zhai@intel.com>

gsttings_data_convert cause seg fault as gnome-keyring's schema is not
installed properly. As a fix, running glib-compile-schemas from glib-utils to
made "gschemas.compiled".

[YOCTO #1779] got fixed.

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
---
 meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)
Saul Wold - Dec. 27, 2011, 6:42 p.m.
On 12/27/2011 05:06 AM, edwin.zhai@intel.com wrote:
> From: Zhai Edwin<edwin.zhai@intel.com>
>
> gsttings_data_convert cause seg fault as gnome-keyring's schema is not
> installed properly. As a fix, running glib-compile-schemas from glib-utils to
> made "gschemas.compiled".
>
> [YOCTO #1779] got fixed.
>
> Signed-off-by: Zhai Edwin<edwin.zhai@intel.com>
> ---
>   meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb |   12 ++++++++++--
>   1 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb b/meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb
> index cc97225..a92ac4d 100644
> --- a/meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb
> +++ b/meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb
> @@ -11,12 +11,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
>
>   SECTION = "x11/gnome"
>
> -PR = "r3"
> +PR = "r4"
>
>   inherit autotools gnome pkgconfig
>
>   DEPENDS = "gtk+ libgcrypt libtasn1 libtasn1-native gconf ${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
> -RDEPENDS_${PN} = "libgnome-keyring"
> +RDEPENDS_${PN} = "libgnome-keyring glib-2.0-utils"
>
>   EXTRA_OECONF = "--disable-gtk-doc ${@base_contains('DISTRO_FEATURES', 'pam', '--enable-pam --with-pam-dir=${base_libdir}/security', '--disable-pam', d)}"
>
> @@ -30,6 +30,14 @@ do_install_append () {
>   	install -m 0644 ${WORKDIR}/org.gnome.keyring.service ${D}${datadir}/dbus-1/services
>   }
>
> +pkg_postinst_gnome-keyring () {

I think you can use pkg_postinst_${PN}

> +if [ "x$D" != "x" ]; then
> +    exit 1
> +fi
> +
> +test -x ${bindir}/glib-compile-schemas&&  glib-compile-schemas  ${datadir}/glib-2.0/schemas
> +}
> +
I think you are missing tabs here, I believe the standard for script 
functions is to have tabs not spaces also.

Sau!

>   FILES_${PN} += "${datadir}/dbus-1/services ${datadir}/gcr ${base_libdir}/security/*.so"
>   FILES_${PN}-dbg += "${libdir}/gnome-keyring/standalone/.debug/ ${base_libdir}/security/*.la"
>   FILES_${PN}-dbg += "${libdir}/gnome-keyring/devel/.debug/ ${base_libdir}/security/.debug"

Patch

diff --git a/meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb b/meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb
index cc97225..a92ac4d 100644
--- a/meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb
+++ b/meta/recipes-gnome/gnome/gnome-keyring_2.32.1.bb
@@ -11,12 +11,12 @@  LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
 
 SECTION = "x11/gnome"
 
-PR = "r3"
+PR = "r4"
 
 inherit autotools gnome pkgconfig
 
 DEPENDS = "gtk+ libgcrypt libtasn1 libtasn1-native gconf ${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
-RDEPENDS_${PN} = "libgnome-keyring"
+RDEPENDS_${PN} = "libgnome-keyring glib-2.0-utils"
 
 EXTRA_OECONF = "--disable-gtk-doc ${@base_contains('DISTRO_FEATURES', 'pam', '--enable-pam --with-pam-dir=${base_libdir}/security', '--disable-pam', d)}"
 
@@ -30,6 +30,14 @@  do_install_append () {
 	install -m 0644 ${WORKDIR}/org.gnome.keyring.service ${D}${datadir}/dbus-1/services
 }
 
+pkg_postinst_gnome-keyring () {
+if [ "x$D" != "x" ]; then
+    exit 1
+fi
+
+test -x ${bindir}/glib-compile-schemas && glib-compile-schemas  ${datadir}/glib-2.0/schemas
+}
+
 FILES_${PN} += "${datadir}/dbus-1/services ${datadir}/gcr ${base_libdir}/security/*.so"
 FILES_${PN}-dbg += "${libdir}/gnome-keyring/standalone/.debug/ ${base_libdir}/security/*.la"
 FILES_${PN}-dbg += "${libdir}/gnome-keyring/devel/.debug/ ${base_libdir}/security/.debug"