diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-07-12 04:49:55 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-07-12 04:49:55 -0700 |
commit | 0c71f83404d17e27b1fc319ad6979969c6205062 (patch) | |
tree | 1856dc53b02f9427e10d7a83ddfd2a1b1b2da98e /pym/_emerge | |
parent | f9197545f7686d610d6d153fb2dbbb4d4d65bb7e (diff) | |
download | portage-0c71f83404d17e27b1fc319ad6979969c6205062.tar.gz portage-0c71f83404d17e27b1fc319ad6979969c6205062.tar.bz2 portage-0c71f83404d17e27b1fc319ad6979969c6205062.zip |
Fix output handling for FEATURES="lafilefixing".
Diffstat (limited to 'pym/_emerge')
-rw-r--r-- | pym/_emerge/EbuildPhase.py | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/pym/_emerge/EbuildPhase.py b/pym/_emerge/EbuildPhase.py index 51ee93da6..8d20fd878 100644 --- a/pym/_emerge/EbuildPhase.py +++ b/pym/_emerge/EbuildPhase.py @@ -58,18 +58,21 @@ class EbuildPhase(CompositeTask): settings = self.settings if self.phase == "install": - out = None - log_path = self.settings.get("PORTAGE_LOG_FILE") - log_file = None - if self.background and log_path is not None: - log_file = codecs.open(_unicode_encode(log_path, - encoding=_encodings['fs'], errors='strict'), - mode='a', encoding=_encodings['content'], errors='replace') - out = log_file + out = portage.StringIO() _post_src_install_chost_fix(settings) - _post_src_install_uid_fix(settings, out=out) - if log_file is not None: - log_file.close() + _post_src_install_uid_fix(settings, out) + msg = _unicode_decode(out.getvalue(), + encoding=_encodings['content'], errors='replace') + if msg: + if not self.background: + writemsg_stdout(msg, noiselevel=-1) + log_path = self.settings.get("PORTAGE_LOG_FILE") + if log_path is not None: + log_file = codecs.open(_unicode_encode(log_path, + encoding=_encodings['fs'], errors='strict'), + mode='a', encoding=_encodings['content'], errors='replace') + log_file.write(msg) + log_file.close() post_phase_cmds = _post_phase_cmds.get(self.phase) if post_phase_cmds is not None: |