summaryrefslogtreecommitdiffstats
path: root/lib/bb/cooker.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2012-03-11 14:13:05 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-03-12 02:22:34 +0000
commit7614c5bdcaf9d70614b4fad2ca02c7e6eaa92f1b (patch)
tree3b6c47d33c143e5da94f2cb30aee74e2005231b7 /lib/bb/cooker.py
parentb36f2e3803dfc494d5b171759f55faf33708e6f1 (diff)
downloadbitbake-7614c5bdcaf9d70614b4fad2ca02c7e6eaa92f1b.tar.gz
cooker.py: Allow parsing shutdown to be called more than once
The parsing shutdown call can occur more than once. Currently if this happens the code will hang. Add some code to prevent this. [YOCTO #2039 partial] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/cooker.py')
-rw-r--r--lib/bb/cooker.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 451f1e922..78d875443 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -1556,6 +1556,7 @@ class CookerParser(object):
self.progress_chunk = max(self.toparse / 100, 1)
self.start()
+ self.haveshutdown = False
def start(self):
self.results = self.load_cached()
@@ -1582,6 +1583,9 @@ class CookerParser(object):
def shutdown(self, clean=True, force=False):
if not self.toparse:
return
+ if self.haveshutdown:
+ return
+ self.haveshutdown = True
if clean:
event = bb.event.ParseCompleted(self.cached, self.parsed,