From: Fabian Groffen Date: Mon, 24 Aug 2009 09:49:02 +0000 (-0000) Subject: port LinkageMap encoding fix to LinkageMapMachO X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=8fea9670c77d4cebe8635b42e25b1ba65693107f;p=portage.git port LinkageMap encoding fix to LinkageMapMachO svn path=/main/branches/prefix/; revision=14147 --- diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py index 9188970b4..47c48a99f 100644 --- a/pym/portage/dbapi/vartree.py +++ b/pym/portage/dbapi/vartree.py @@ -837,6 +837,24 @@ class LinkageMapMachO(object): 2. realpath of object if object does not exist. """ + + os = _os_merge + + try: + _unicode_encode(obj, + encoding=_encodings['merge'], errors='strict') + except UnicodeEncodeError: + # The package appears to have been merged with a + # different value of sys.getfilesystemencoding(), + # so fall back to utf_8 if appropriate. + try: + _unicode_encode(obj, + encoding=_encodings['fs'], errors='strict') + except UnicodeEncodeError: + pass + else: + os = portage.os + abs_path = os.path.join(root, obj.lstrip(os.path.sep)) try: object_stat = os.stat(abs_path)