Fix parallel-fetch output by BinpkgVerifier.
authorZac Medico <zmedico@gentoo.org>
Fri, 15 Oct 2010 02:55:44 +0000 (19:55 -0700)
committerZac Medico <zmedico@gentoo.org>
Fri, 15 Oct 2010 02:55:44 +0000 (19:55 -0700)
BinpkgVerifier was erroneusly sending parallel-fetch output to stdout.
Thanks to Jeremy Olexa <darkside@g.o> for reporting.

pym/_emerge/BinpkgVerifier.py
pym/_emerge/PollScheduler.py

index ed4fc1f745f83f6932d625f9b0c874cebe1a8cd4..e787437d04a91f8b87b626db3da7a9b73f15b4ee 100644 (file)
@@ -71,7 +71,8 @@ class BinpkgVerifier(AsynchronousTask):
                msg = _unicode_decode(out.getvalue(),
                        encoding=_encodings['content'], errors='replace')
                if msg:
-                       self.scheduler.output(msg, log_path=self.logfile)
+                       self.scheduler.output(msg, log_path=self.logfile,
+                               background=self.background)
 
                self.returncode = rval
                self.wait()
index f9fe32e9a7eab598b21ac860cffeca67319d3469..68826e28edc7bb5c315c1c58d4832cc84481b506 100644 (file)
@@ -244,7 +244,8 @@ class PollScheduler(object):
 
                return event_handled
 
-       def _task_output(self, msg, log_path=None, level=0, noiselevel=-1):
+       def _task_output(self, msg, log_path=None, background=None,
+               level=0, noiselevel=-1):
                """
                Output msg to stdout if not self._background. If log_path
                is not None then append msg to the log (appends with
@@ -252,7 +253,12 @@ class PollScheduler(object):
                corresponds to a supported compression type).
                """
 
-               if not self._background:
+               if background is None:
+                       # If the task does not have a local background value
+                       # (like for parallel-fetch), then use the global value.
+                       background = self._background
+
+               if not background:
                        writemsg_level(msg, level=level, noiselevel=noiselevel)
 
                if log_path is not None: