diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-01-11 05:22:43 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-01-11 05:22:43 +0000 |
commit | b4ef1e6be09e5033e165ab1cfe062d23b00f0254 (patch) | |
tree | 5563e73c5005ddd91f25bebfb6c510ebeabd4de4 /pym/_emerge | |
parent | 3dbfec2d8a087d242983ef40ef37ad6ed9b77913 (diff) | |
download | portage-b4ef1e6be09e5033e165ab1cfe062d23b00f0254.tar.gz portage-b4ef1e6be09e5033e165ab1cfe062d23b00f0254.tar.bz2 portage-b4ef1e6be09e5033e165ab1cfe062d23b00f0254.zip |
Bug #300388 - Fix terminal handling code to so term codes aren't sent when
TERM=dumb.
svn path=/main/trunk/; revision=15191
Diffstat (limited to 'pym/_emerge')
-rw-r--r-- | pym/_emerge/JobStatusDisplay.py | 4 | ||||
-rw-r--r-- | pym/_emerge/actions.py | 9 | ||||
-rw-r--r-- | pym/_emerge/main.py | 4 |
3 files changed, 12 insertions, 5 deletions
diff --git a/pym/_emerge/JobStatusDisplay.py b/pym/_emerge/JobStatusDisplay.py index dfc766d26..83603ed87 100644 --- a/pym/_emerge/JobStatusDisplay.py +++ b/pym/_emerge/JobStatusDisplay.py @@ -55,7 +55,9 @@ class JobStatusDisplay(object): object.__setattr__(self, "_jobs_column_width", width - 32) self.reset() - isatty = hasattr(self.out, "isatty") and self.out.isatty() + isatty = os.environ.get('TERM') != 'dumb' and \ + hasattr(self.out, 'isatty') and \ + self.out.isatty() object.__setattr__(self, "_isatty", isatty) if not isatty or not self._init_term(): term_codes = {} diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py index 1d7fdc686..2def0e89e 100644 --- a/pym/_emerge/actions.py +++ b/pym/_emerge/actions.py @@ -1467,8 +1467,10 @@ def action_metadata(settings, portdb, myopts, porttrees=None): porttrees = [tree_data.path for tree_data in porttrees_data] - isatty = sys.stdout.isatty() - quiet = not isatty or '--quiet' in myopts + quiet = settings.get('TERM') == 'dumb' or \ + '--quiet' in myopts or \ + not sys.stdout.isatty() + onProgress = None if not quiet: progressBar = portage.output.TermProgressBar() @@ -2389,7 +2391,8 @@ def adjust_config(myopts, settings): portage.output.havecolor = 0 settings["NOCOLOR"] = "true" settings.backup_changes("NOCOLOR") - elif not sys.stdout.isatty() and settings.get("NOCOLOR") != "no": + elif settings.get('TERM') == 'dumb' or \ + not sys.stdout.isatty(): portage.output.havecolor = 0 settings["NOCOLOR"] = "true" settings.backup_changes("NOCOLOR") diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py index a2245892a..d9916c9dd 100644 --- a/pym/_emerge/main.py +++ b/pym/_emerge/main.py @@ -1324,7 +1324,9 @@ def emerge_main(): portage.debug.set_trace(True) if not ("--quiet" in myopts): - if not sys.stdout.isatty() or ("--nospinner" in myopts): + if '--nospinner' in myopts or \ + settings.get('TERM') == 'dumb' or \ + not sys.stdout.isatty(): spinner.update = spinner.update_basic if myaction == 'version': |