Pārlūkot izejas kodu

tinfoil: fix duplication of log messages

Adding an additional logger in setup_bitbake() interacts poorly with the
logger we have added by default in tinfoil's constructor, with the
result that messages may be doubled or even tripled in tinfoil-using
scripts. Disable adding this one when calling setup_bitbake() from
tinfoil to avoid this problem.

Part of the fix for [YOCTO #11275].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton 7 gadi atpakaļ
vecāks
revīzija
8a5bae76f9
2 mainītis faili ar 4 papildinājumiem un 3 dzēšanām
  1. 2 2
      lib/bb/main.py
  2. 2 1
      lib/bb/tinfoil.py

+ 2 - 2
lib/bb/main.py

@@ -477,10 +477,10 @@ def bitbake_main(configParams, configuration):
 
     return 1
 
-def setup_bitbake(configParams, configuration, extrafeatures=None):
+def setup_bitbake(configParams, configuration, extrafeatures=None, setup_logging=True):
     # Ensure logging messages get sent to the UI as events
     handler = bb.event.LogHandler()
-    if not configParams.status_only:
+    if setup_logging and not configParams.status_only:
         # In status only mode there are no logs and no UI
         logger.addHandler(handler)
 

+ 2 - 1
lib/bb/tinfoil.py

@@ -245,7 +245,8 @@ class Tinfoil:
 
         server, self.server_connection, ui_module = setup_bitbake(config_params,
                             cookerconfig,
-                            extrafeatures)
+                            extrafeatures,
+                            setup_logging=False)
 
         self.ui_module = ui_module