summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r--bitbake/lib/bb/cooker.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index 69098ccf91..0ed70f9bd8 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -28,6 +28,7 @@ import sre_constants
28import threading 28import threading
29import multiprocessing 29import multiprocessing
30import signal 30import signal
31import atexit
31from cStringIO import StringIO 32from cStringIO import StringIO
32from contextlib import closing 33from contextlib import closing
33import bb 34import bb
@@ -1038,8 +1039,12 @@ class CookerParser(object):
1038 self.task_queue.close() 1039 self.task_queue.close()
1039 for process in self.processes: 1040 for process in self.processes:
1040 process.join() 1041 process.join()
1041 threading.Thread(target=self.bb_cache.sync).start() 1042 sync = threading.Thread(target=self.bb_cache.sync)
1042 threading.Thread(target=bb.codeparser.parser_cache_save(self.cooker.configuration.data)).start() 1043 sync.start()
1044 atexit.register(lambda: sync.join())
1045 codesync = threading.Thread(target=bb.codeparser.parser_cache_save(self.cooker.configuration.data))
1046 codesync.start()
1047 atexit.register(lambda: codesync.join())
1043 if self.error > 0: 1048 if self.error > 0:
1044 raise ParsingErrorsFound() 1049 raise ParsingErrorsFound()
1045 1050