diff options
author | 2018-06-23 15:03:35 -0700 | |
---|---|---|
committer | 2018-06-23 15:15:13 -0700 | |
commit | a9a62e57194ccefce1ecabb9df761993f35f53be (patch) | |
tree | 80073df4015b33005b34d553a3695ea625daade9 /pym/_emerge | |
parent | Revert "_post_src_install_uid_fix: allow files with portage group permissions... (diff) | |
download | portage-a9a62e57194ccefce1ecabb9df761993f35f53be.tar.gz portage-a9a62e57194ccefce1ecabb9df761993f35f53be.tar.bz2 portage-a9a62e57194ccefce1ecabb9df761993f35f53be.zip |
SpawnProcess._unregister: cancel PipeLogger (bug 658806)
If the PipeLogger has not closed itself before the _unregister
method has been called, then it must be cancelled so that it
will close the log immediately. This fixes the case reported
in bug 658806, where an unclosed PipeLogger instance left the
log file with a temporarily incomplete gzip stream.
Bug: https://bugs.gentoo.org/658806
Diffstat (limited to 'pym/_emerge')
-rw-r--r-- | pym/_emerge/SpawnProcess.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/pym/_emerge/SpawnProcess.py b/pym/_emerge/SpawnProcess.py index f592c543d..cd535d143 100644 --- a/pym/_emerge/SpawnProcess.py +++ b/pym/_emerge/SpawnProcess.py @@ -176,6 +176,9 @@ class SpawnProcess(SubProcess): if self.cgroup is not None: self._cgroup_cleanup() self.cgroup = None + if self._pipe_logger is not None: + self._pipe_logger.cancel() + self._pipe_logger = None def _cancel(self): SubProcess._cancel(self) |