From 9832f811c7b731bfd2d965986cd5a058a9c6c92f Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sat, 22 Aug 2009 07:52:43 +0000 Subject: Bug #282269 - Avoid str() calls with overlay paths, which can trigger UnicodeEncodeError in python-2.x. svn path=/main/trunk/; revision=14124 --- pym/_emerge/RepoDisplay.py | 4 ++++ pym/_emerge/depgraph.py | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'pym/_emerge') diff --git a/pym/_emerge/RepoDisplay.py b/pym/_emerge/RepoDisplay.py index a954aebfa..e98be93c4 100644 --- a/pym/_emerge/RepoDisplay.py +++ b/pym/_emerge/RepoDisplay.py @@ -48,6 +48,10 @@ class RepoDisplay(object): return s def __str__(self): + """ + In python-2.x, str() can trigger a UnicodeEncodeError here, + so call __str__() directly. + """ output = [] shown_repos = self._shown_repos unknown_repo = self._unknown_repo diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index ebb3bfda4..bd2964f3c 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -4370,7 +4370,9 @@ class depgraph(object): print print counters if show_repos: - writemsg_stdout(str(repo_display), noiselevel=-1) + # In python-2.x, str() can trigger a UnicodeEncodeError here, + # so call __str__() directly. + writemsg_stdout(repo_display.__str__(), noiselevel=-1) if "--changelog" in self._frozen_config.myopts: writemsg_stdout('\n', noiselevel=-1) -- cgit v1.2.3-1-g7c22