diff options
author | Chris Larson <chris_larson@mentor.com> | 2011-02-16 17:50:50 -0500 |
---|---|---|
committer | Chris Larson <chris_larson@mentor.com> | 2011-02-16 17:50:51 -0500 |
commit | e9e174e5781fc3de4dfd60d01228048a06a62b16 (patch) | |
tree | c92e465d36c05938d1488a29b2fe36f45c5572c0 | |
parent | 8eafb12208fcd073f930c0c74f25831d02c02198 (diff) | |
download | bitbake-e9e174e5781fc3de4dfd60d01228048a06a62b16.tar.gz |
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.
Signed-off-by: Chris Larson <chris_larson@mentor.com>
-rw-r--r-- | lib/bb/cooker.py | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py index be1d55ae4..70d1ae3ee 100644 --- a/lib/bb/cooker.py +++ b/lib/bb/cooker.py @@ -948,15 +948,21 @@ class CookerParser(object): def init(cfg): 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, |