diff options
Diffstat (limited to 'bitbake/lib/bb/server/process.py')
-rw-r--r-- | bitbake/lib/bb/server/process.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/bitbake/lib/bb/server/process.py b/bitbake/lib/bb/server/process.py index eba28ad983..5acc105e08 100644 --- a/bitbake/lib/bb/server/process.py +++ b/bitbake/lib/bb/server/process.py | |||
@@ -71,6 +71,10 @@ def get_lockfile_process_msg(lockfile): | |||
71 | return procs.decode("utf-8") | 71 | return procs.decode("utf-8") |
72 | return None | 72 | return None |
73 | 73 | ||
74 | class idleFinish(): | ||
75 | def __init__(self, msg): | ||
76 | self.msg = msg | ||
77 | |||
74 | class ProcessServer(): | 78 | class ProcessServer(): |
75 | profile_filename = "profile.log" | 79 | profile_filename = "profile.log" |
76 | profile_processed_filename = "profile.log.processed" | 80 | profile_processed_filename = "profile.log.processed" |
@@ -361,7 +365,12 @@ class ProcessServer(): | |||
361 | for function, data in list(self._idlefuns.items()): | 365 | for function, data in list(self._idlefuns.items()): |
362 | try: | 366 | try: |
363 | retval = function(self, data, False) | 367 | retval = function(self, data, False) |
364 | if retval is False: | 368 | if isinstance(retval, idleFinish): |
369 | serverlog("Removing idle function %s at idleFinish" % str(function)) | ||
370 | del self._idlefuns[function] | ||
371 | self.cooker.command.finishAsyncCommand(retval.msg) | ||
372 | nextsleep = None | ||
373 | elif retval is False: | ||
365 | serverlog("Removing idle function %s" % str(function)) | 374 | serverlog("Removing idle function %s" % str(function)) |
366 | del self._idlefuns[function] | 375 | del self._idlefuns[function] |
367 | nextsleep = None | 376 | nextsleep = None |