summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/cooker.py
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2012-02-23 17:38:07 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-02-23 22:52:15 +0000
commitebc0d4252a19e6ab38052473e54138d29b172dfc (patch)
tree752ea71cc8bc9ca72fa2d382d1255b2e1ebbd307 /bitbake/lib/bb/cooker.py
parent4a1c163b55a399d3a6cb0bedec0ee23ce3128313 (diff)
downloadpoky-ebc0d4252a19e6ab38052473e54138d29b172dfc.tar.gz
bitbake: fix parse errors not being reported
Fixes a regression introduced in BitBake rev c9f58ef6b897d3fa5b0d23734b5f2cb3dabb057a which prevents errors during parsing from being fully reported because BitBake shuts down before it can print them. Move the error printing to before the shutdown in order to fix it. Also remove a couple of superfluous calls to sys.exit() since these will never be called (as self.shutdown(clean=False) does this itself). (Bitbake rev: 356c42ed00541dea2c382c57f768a4f431d22db0) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/cooker.py')
-rw-r--r--bitbake/lib/bb/cooker.py10
1 files changed, 4 insertions, 6 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index f0778e5a46..308805a712 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -1605,22 +1605,20 @@ class CookerParser(object):
1605 self.shutdown() 1605 self.shutdown()
1606 return False 1606 return False
1607 except ParsingFailure as exc: 1607 except ParsingFailure as exc:
1608 self.shutdown(clean=False) 1608 logger.error('Unable to parse %s: %s' %
1609 bb.fatal('Unable to parse %s: %s' %
1610 (exc.recipe, bb.exceptions.to_string(exc.realexception))) 1609 (exc.recipe, bb.exceptions.to_string(exc.realexception)))
1610 self.shutdown(clean=False)
1611 except (bb.parse.ParseError, bb.data_smart.ExpansionError) as exc: 1611 except (bb.parse.ParseError, bb.data_smart.ExpansionError) as exc:
1612 logger.error(str(exc))
1612 self.shutdown(clean=False) 1613 self.shutdown(clean=False)
1613 bb.fatal(str(exc))
1614 except SyntaxError as exc: 1614 except SyntaxError as exc:
1615 self.shutdown(clean=False)
1616 logger.error('Unable to parse %s', exc.recipe) 1615 logger.error('Unable to parse %s', exc.recipe)
1617 sys.exit(1) 1616 self.shutdown(clean=False)
1618 except Exception as exc: 1617 except Exception as exc:
1619 etype, value, tb = sys.exc_info() 1618 etype, value, tb = sys.exc_info()
1620 logger.error('Unable to parse %s', value.recipe, 1619 logger.error('Unable to parse %s', value.recipe,
1621 exc_info=(etype, value, exc.traceback)) 1620 exc_info=(etype, value, exc.traceback))
1622 self.shutdown(clean=False) 1621 self.shutdown(clean=False)
1623 sys.exit(1)
1624 1622
1625 self.current += 1 1623 self.current += 1
1626 self.virtuals += len(result) 1624 self.virtuals += len(result)