diff options
Diffstat (limited to 'bitbake/lib')
-rw-r--r-- | bitbake/lib/bb/runqueue.py | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index f82bc41357..a437aeef90 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py | |||
@@ -2348,10 +2348,16 @@ class RunQueueExecute: | |||
2348 | self.updated_taskhash_queue.remove((tid, unihash)) | 2348 | self.updated_taskhash_queue.remove((tid, unihash)) |
2349 | 2349 | ||
2350 | if unihash != self.rqdata.runtaskentries[tid].unihash: | 2350 | if unihash != self.rqdata.runtaskentries[tid].unihash: |
2351 | hashequiv_logger.verbose("Task %s unihash changed to %s" % (tid, unihash)) | 2351 | # Make sure we rehash any other tasks with the same task hash that we're deferred against. |
2352 | self.rqdata.runtaskentries[tid].unihash = unihash | 2352 | torehash = [tid] |
2353 | bb.parse.siggen.set_unihash(tid, unihash) | 2353 | for deftid in self.sq_deferred: |
2354 | toprocess.add(tid) | 2354 | if self.sq_deferred[deftid] == tid: |
2355 | torehash.append(deftid) | ||
2356 | for hashtid in torehash: | ||
2357 | hashequiv_logger.verbose("Task %s unihash changed to %s" % (hashtid, unihash)) | ||
2358 | self.rqdata.runtaskentries[hashtid].unihash = unihash | ||
2359 | bb.parse.siggen.set_unihash(hashtid, unihash) | ||
2360 | toprocess.add(hashtid) | ||
2355 | 2361 | ||
2356 | # Work out all tasks which depend upon these | 2362 | # Work out all tasks which depend upon these |
2357 | total = set() | 2363 | total = set() |