From: Paul Eggleton Date: Wed, 14 Oct 2015 15:43:24 +0000 (+0100) Subject: devtool: extract: fix error handling X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~28623 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a46fb1a06be2df00a0bceb4e60ebdecb55b5974c;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git devtool: extract: fix error handling If recipe parsing fails we need to exit out instead of attempting to use the data object that's set to None, which resulted in a traceback. Signed-off-by: Paul Eggleton Signed-off-by: Ross Burton --- diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py index 6ce3144dd03..5d7e903670d 100644 --- a/scripts/lib/devtool/standard.py +++ b/scripts/lib/devtool/standard.py @@ -225,6 +225,9 @@ def extract(args, config, basepath, workspace): import bb tinfoil = _prep_extract_operation(config, basepath, args.recipename) + if not tinfoil: + # Error already shown + return 1 rd = parse_recipe(config, tinfoil, args.recipename, True) if not rd: @@ -271,6 +274,8 @@ def _prep_extract_operation(config, basepath, recipename): trying to extract a package. Returns the tinfoil instance to be used.""" tinfoil = setup_tinfoil(basepath=basepath) rd = parse_recipe(config, tinfoil, recipename, True) + if not rd: + return None if bb.data.inherits_class('kernel-yocto', rd): tinfoil.shutdown() @@ -500,6 +505,9 @@ def modify(args, config, basepath, workspace): args.srctree) if args.extract: tinfoil = _prep_extract_operation(config, basepath, args.recipename) + if not tinfoil: + # Error already shown + return 1 else: tinfoil = setup_tinfoil(basepath=basepath)