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.

(From OE-Core rev: a46fb1a06be2df00a0bceb4e60ebdecb55b5974c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Paul Eggleton 2015-10-14 16:43:24 +01:00 committed by Richard Purdie
parent 3aac11076e
commit 5a02ec217d
1 changed files with 8 additions and 0 deletions

View File

@ -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)