aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbin/bitbake6
-rw-r--r--lib/bb/server/process.py3
2 files changed, 6 insertions, 3 deletions
diff --git a/bin/bitbake b/bin/bitbake
index fa7caf218..10cce2d13 100755
--- a/bin/bitbake
+++ b/bin/bitbake
@@ -174,6 +174,10 @@ Default BBFILES are the .bb files in the current directory.""")
bb.utils.init_logger(bb.msg, configuration.verbose, configuration.debug,
configuration.debug_domains)
+ # Ensure logging messages get sent to the UI as events
+ handler = bb.event.LogHandler()
+ logger.addHandler(handler)
+
# Clear away any spurious environment variables. But don't wipe the
# environment totally. This is necessary to ensure the correct operation
# of the UIs (e.g. for DISPLAY, etc.)
@@ -189,6 +193,8 @@ Default BBFILES are the .bb files in the current directory.""")
server = ProcessServer(server_channel, event_queue, configuration)
server.start()
+ logger.removeHandler(handler)
+
def shutdown(force=False):
signal.signal(signal.SIGINT, signal.SIG_IGN)
server.stop()
diff --git a/lib/bb/server/process.py b/lib/bb/server/process.py
index c3aaa7fb9..dac442292 100644
--- a/lib/bb/server/process.py
+++ b/lib/bb/server/process.py
@@ -95,9 +95,6 @@ class ProcessServer(Process):
def main(self):
"""Server main loop"""
- # Ensure logging messages get sent to the UI as events
- logger.addHandler(bb.event.LogHandler())
-
# Ignore SIGINT within the server, as all SIGINT handling is done by
# the UI and communicated to us
signal.signal(signal.SIGINT, signal.SIG_IGN)