Patchwork [V2,1/1] pixbufcache: add error exit in pixbufcache_sstate_postinst

login
register
mail settings
Submitter Joe Slater
Date April 22, 2014, 6 p.m.
Message ID <1398189641-16698-1-git-send-email-jslater@windriver.com>
Download mbox | patch
Permalink /patch/70737/
State Accepted
Commit 2a129dd370fafd6733ff136e0c7c801ea451091b
Headers show

Comments

Joe Slater - April 22, 2014, 6 p.m.
In order to attempt recovery of a failed populate_sysroot_setscene,
we need to explicitly error exit an SSTATEPOSTINSTFUNC.  So, we test
the return value of gdk-pixbuf-query-loaders.

Signed-off-by: Joe Slater <jslater@windriver.com>
---
 meta/classes/pixbufcache.bbclass |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)
Ross Burton - April 23, 2014, 10:32 a.m.
Acked-By: Ross Burton <ross.burton@intel.com>

On 22 April 2014 19:00, Joe Slater <jslater@windriver.com> wrote:
> In order to attempt recovery of a failed populate_sysroot_setscene,
> we need to explicitly error exit an SSTATEPOSTINSTFUNC.  So, we test
> the return value of gdk-pixbuf-query-loaders.
>
> Signed-off-by: Joe Slater <jslater@windriver.com>
> ---
>  meta/classes/pixbufcache.bbclass |    6 ++++--
>  1 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/meta/classes/pixbufcache.bbclass b/meta/classes/pixbufcache.bbclass
> index 922174d..b8d75bd 100644
> --- a/meta/classes/pixbufcache.bbclass
> +++ b/meta/classes/pixbufcache.bbclass
> @@ -46,14 +46,16 @@ python populate_packages_append() {
>  }
>
>  #
> -# Add a sstate postinst hook to update the cache for native packages
> +# Add an sstate postinst hook to update the cache for native packages.
> +# An error exit during populate_sysroot_setscene allows bitbake to
> +# try to recover by re-building the package.
>  #
>  SSTATEPOSTINSTFUNCS_append_class-native = " pixbufcache_sstate_postinst"
>
>  pixbufcache_sstate_postinst() {
>         if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ]
>         then
> -               GDK_PIXBUF_FATAL_LOADER=1 gdk-pixbuf-query-loaders --update-cache
> +               GDK_PIXBUF_FATAL_LOADER=1 gdk-pixbuf-query-loaders --update-cache || exit 1
>         fi
>  }
>
> --
> 1.7.3.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core

Patch

diff --git a/meta/classes/pixbufcache.bbclass b/meta/classes/pixbufcache.bbclass
index 922174d..b8d75bd 100644
--- a/meta/classes/pixbufcache.bbclass
+++ b/meta/classes/pixbufcache.bbclass
@@ -46,14 +46,16 @@  python populate_packages_append() {
 }
 
 #
-# Add a sstate postinst hook to update the cache for native packages
+# Add an sstate postinst hook to update the cache for native packages.
+# An error exit during populate_sysroot_setscene allows bitbake to
+# try to recover by re-building the package.
 #
 SSTATEPOSTINSTFUNCS_append_class-native = " pixbufcache_sstate_postinst"
 
 pixbufcache_sstate_postinst() {
 	if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ]
 	then
-		GDK_PIXBUF_FATAL_LOADER=1 gdk-pixbuf-query-loaders --update-cache
+		GDK_PIXBUF_FATAL_LOADER=1 gdk-pixbuf-query-loaders --update-cache || exit 1
 	fi
 }