From 87dfc1466d91e9d80b122691b965714fd10ab209 Mon Sep 17 00:00:00 2001 From: Chris Larson Date: Wed, 16 Feb 2011 17:50:50 -0500 Subject: cooker: don't choke if we have nothing to parse If all our recipes were cached, there's no reason to fire off any parsing progress events at all. (Bitbake rev: e9e174e5781fc3de4dfd60d01228048a06a62b16) Signed-off-by: Chris Larson Signed-off-by: Richard Purdie --- bitbake/lib/bb/cooker.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'bitbake/lib/bb/cooker.py') diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index ece88fce93..4f930ee840 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py @@ -1185,15 +1185,21 @@ class CookerParser(object): multiprocessing.util.Finalize(None, bb.codeparser.parser_cache_save, args=(self.cooker.configuration.data, ), exitpriority=1) parse_file.cfg = cfg - bb.event.fire(bb.event.ParseStarted(self.toparse), self.cfgdata) + self.results = self.load_cached() - self.pool = multiprocessing.Pool(self.num_processes, init, [self.cfgdata]) - parsed = self.pool.imap(parse_file, self.willparse) - self.pool.close() + if self.toparse: + bb.event.fire(bb.event.ParseStarted(self.toparse), self.cfgdata) - self.results = itertools.chain(self.load_cached(), parsed) + self.pool = multiprocessing.Pool(self.num_processes, init, [self.cfgdata]) + parsed = self.pool.imap(parse_file, self.willparse) + self.pool.close() + + self.results = itertools.chain(self.results, parsed) def shutdown(self, clean=True): + if not self.toparse: + return + if clean: event = bb.event.ParseCompleted(self.cached, self.parsed, self.skipped, self.masked, -- cgit v1.2.3-54-g00ecf