[OE-core] [PATCH] update_gio_module_cache: Do not chown a non-existing file

Alexander Kanavin alexander.kanavin at linux.intel.com
Thu Mar 30 09:38:44 UTC 2017


On 03/30/2017 02:16 AM, Peter Kjellerstedt wrote:
> Only change the ownership of ${libdir}/gio/modules/giomodule.cache if
> it exists.
>
> Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt at axis.com>
> ---
>  scripts/postinst-intercepts/update_gio_module_cache | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/scripts/postinst-intercepts/update_gio_module_cache b/scripts/postinst-intercepts/update_gio_module_cache
> index 92092f2144..fc3f9d0d6c 100644
> --- a/scripts/postinst-intercepts/update_gio_module_cache
> +++ b/scripts/postinst-intercepts/update_gio_module_cache
> @@ -3,7 +3,7 @@
>  set -e
>
>  PSEUDO_UNLOAD=1 qemuwrapper -L $D -E LD_LIBRARY_PATH=$D${libdir}:$D${base_libdir} \
> -        $D${libexecdir}/${binprefix}gio-querymodules $D${libdir}/gio/modules/
> -
> -chown root:root $D${libdir}/gio/modules/giomodule.cache
> +	$D${libexecdir}/${binprefix}gio-querymodules $D${libdir}/gio/modules/
>
> +[ ! -e $D${libdir}/gio/modules/giomodule.cache ] ||
> +	chown root:root $D${libdir}/gio/modules/giomodule.cache
>

Nope. The postinst-intercept scirpts are allowed to fail, and if they 
are, they are deferred to first boot. If giomodule.cache file does not 
exist, that means that qemu does not work for the target machine, which 
is not a bug, and is handled by detecting script failure and taking the 
same action at first boot time - which your change breaks.

Alex



More information about the Openembedded-core mailing list