summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2013-08-26 12:41:03 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-08-26 13:43:47 +0100
commitc34bb765fa79e82ea31d0e1b09263c4394f7c37b (patch)
treeaa1407ee7dd8c16afce3e61b837ffdabc67dbba3 /bitbake
parent1dff47b097615771bc144f14c31ea137aa562c70 (diff)
downloadpoky-c34bb765fa79e82ea31d0e1b09263c4394f7c37b.tar.gz
bitbake: command.py: Call updateCache for all states != running
updateCache handles the logic for shutting down the parsing so we need to call it for all cases when we're not running. This fixes hangs if Ctrl+C is pressed during parsing. (Bitbake rev: 552b8935dd2f9f11e8d5c08a597a7e966b891480) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/command.py3
-rw-r--r--bitbake/lib/bb/cooker.py1
2 files changed, 2 insertions, 2 deletions
diff --git a/bitbake/lib/bb/command.py b/bitbake/lib/bb/command.py
index bdf1c36636..3527ad03c1 100644
--- a/bitbake/lib/bb/command.py
+++ b/bitbake/lib/bb/command.py
@@ -90,8 +90,7 @@ class Command:
90 (command, options) = self.currentAsyncCommand 90 (command, options) = self.currentAsyncCommand
91 commandmethod = getattr(CommandsAsync, command) 91 commandmethod = getattr(CommandsAsync, command)
92 needcache = getattr( commandmethod, "needcache" ) 92 needcache = getattr( commandmethod, "needcache" )
93 if (needcache and self.cooker.state in 93 if needcache and self.cooker.state != bb.cooker.state.running:
94 (bb.cooker.state.initial, bb.cooker.state.parsing)):
95 self.cooker.updateCache() 94 self.cooker.updateCache()
96 return True 95 return True
97 else: 96 else:
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index 97210ba4e3..5a848042f3 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -1168,6 +1168,7 @@ class BBCooker:
1168 if timestamp: 1168 if timestamp:
1169 return timestr 1169 return timestr
1170 1170
1171 # This is called for all async commands when self.state != running
1171 def updateCache(self): 1172 def updateCache(self):
1172 if self.state == state.running: 1173 if self.state == state.running:
1173 return 1174 return