diff options
author | Christopher Larson <chris_larson@mentor.com> | 2015-08-24 15:31:59 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-09-03 23:28:16 +0100 |
commit | c514b6fbea77ede1b7871b89592a33ed39b1d71c (patch) | |
tree | 594233b11069bd0138b11b9d091712bf91aadc20 | |
parent | dd3050ceef37ac556546e940aa596ce96ef6c8df (diff) | |
download | bitbake-c514b6fbea77ede1b7871b89592a33ed39b1d71c.zip |
bb.data_smart: retain traceback from ExpansionError
This gives us the needed context of the original ExpansionError, which is
invaluable when we have a chain of function calls in the expansion.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | lib/bb/data_smart.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/bb/data_smart.py b/lib/bb/data_smart.py index 75e22f9c..79b4ed93 100644 --- a/lib/bb/data_smart.py +++ b/lib/bb/data_smart.py @@ -392,7 +392,8 @@ class DataSmart(MutableMapping): except bb.parse.SkipRecipe: raise except Exception as exc: - raise ExpansionError(varname, s, exc) + exc_class, exc, tb = sys.exc_info() + raise ExpansionError, ExpansionError(varname, s, exc), tb varparse.value = s |