Skip to contentSkip to conversation

cookerdata: Improve error handling

PATCH New Richard Purdie 1 participant 1 message May 30, 2014

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 cookerdata: Improve error handling

If we see errors during parsing, firstly its bad to show a traceback for an expansion error so lets suppress this.

Secondly, raise a BBHandledException instead of a SystemExit to show we've informed the user about the condition (printing a traceback in the default unknown case).

bitbake/lib/bb/cookerdata.py +5 -2
index b9b9e16..60a6d51 100644
@@ -227,10 +227,13 @@ class CookerDataBuilder(object):
         try:
             self.parseConfigurationFiles(self.prefiles, self.postfiles)
         except SyntaxError:
-            sys.exit(1)
+            raise bb.BBHandledException
+        except bb.data_smart.ExpansionError as e:
+            logger.error(str(e))
+            raise bb.BBHandledException
         except Exception:
             logger.exception("Error parsing configuration files")
-            sys.exit(1)
+            raise bb.BBHandledException
 
     def _findLayerConf(self, data):
         return findConfigFile("bblayers.conf", data)