aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2015-05-25 08:51:37 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-05-25 09:00:05 +0100
commitc6798b431571aae18bb8699ac6e3ec75b731d719 (patch)
treeac8ebc103514ef22bb07acc66975e32cc1d62df4
parent0eb75a34bd9731e9de7bc9600a7418a927561fdb (diff)
downloadbitbake-c6798b431571aae18bb8699ac6e3ec75b731d719.tar.gz
siggen: Don't crash if number of task dependencies change
If the number of task dependencies change you currently get a traceback when using diffsigs. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/siggen.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/lib/bb/siggen.py b/lib/bb/siggen.py
index 2de3aff33..298527221 100644
--- a/lib/bb/siggen.py
+++ b/lib/bb/siggen.py
@@ -419,12 +419,16 @@ def compare_sigfiles(a, b, recursecb = None):
for f in removed:
output.append("Dependency on checksum of file %s was removed" % (f))
- changed = []
- for idx, task in enumerate(a_data['runtaskdeps']):
- a = a_data['runtaskdeps'][idx]
- b = b_data['runtaskdeps'][idx]
- if a_data['runtaskhashes'][a] != b_data['runtaskhashes'][b]:
- changed.append("%s with hash %s\n changed to\n%s with hash %s" % (a, a_data['runtaskhashes'][a], b, b_data['runtaskhashes'][b]))
+
+ if len(a_data['runtaskdeps']) != len(b_data['runtaskdeps']):
+ changed = ["Number of task dependencies changed"]
+ else:
+ changed = []
+ for idx, task in enumerate(a_data['runtaskdeps']):
+ a = a_data['runtaskdeps'][idx]
+ b = b_data['runtaskdeps'][idx]
+ if a_data['runtaskhashes'][a] != b_data['runtaskhashes'][b]:
+ changed.append("%s with hash %s\n changed to\n%s with hash %s" % (a, a_data['runtaskhashes'][a], b, b_data['runtaskhashes'][b]))
if changed:
output.append("runtaskdeps changed from %s to %s" % (clean_basepaths_list(a_data['runtaskdeps']), clean_basepaths_list(b_data['runtaskdeps'])))