From: Arfrever Frehtes Taifersar Arahesis Date: Mon, 21 Sep 2009 17:03:17 +0000 (-0000) Subject: Support bytes in portage.util.normalize_path() with Python 3. X-Git-Tag: v2.2_rc42~70 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=1e41a53912fa53b74577752cbbad7cbdd4e2afef;p=portage.git Support bytes in portage.util.normalize_path() with Python 3. svn path=/main/trunk/; revision=14333 --- diff --git a/pym/portage/util.py b/pym/portage/util.py index 5f1a42c2f..ab70fd5c4 100644 --- a/pym/portage/util.py +++ b/pym/portage/util.py @@ -104,9 +104,14 @@ def normalize_path(mypath): We dislike this behavior so we create our own normpath func to fix it. """ - if mypath.startswith(os.path.sep): + if sys.hexversion >= 0x3000000 and isinstance(mypath, bytes): + path_sep = os.path.sep.encode() + else: + path_sep = os.path.sep + + if mypath.startswith(path_sep): # posixpath.normpath collapses 3 or more leading slashes to just 1. - return os.path.normpath(2*os.path.sep + mypath) + return os.path.normpath(2*path_sep + mypath) else: return os.path.normpath(mypath)