mirror of
https://github.com/python/cpython.git
synced 2025-08-15 22:30:42 +00:00
Merged revisions 77442 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r77442 | ezio.melotti | 2010-01-12 05:32:05 +0200 (Tue, 12 Jan 2010) | 1 line #5827: make sure that normpath preserves unicode ........
This commit is contained in:
parent
0d54bd5122
commit
698037a232
5 changed files with 25 additions and 8 deletions
|
@ -307,8 +307,10 @@ def expandvars(path):
|
|||
|
||||
def normpath(path):
|
||||
"""Normalize path, eliminating double slashes, etc."""
|
||||
# Preserve unicode (if path is unicode)
|
||||
slash, dot = (u'/', u'.') if isinstance(path, unicode) else ('/', '.')
|
||||
if path == '':
|
||||
return '.'
|
||||
return dot
|
||||
initial_slashes = path.startswith('/')
|
||||
# POSIX allows one or two initial slashes, but treats three or more
|
||||
# as single slash.
|
||||
|
@ -326,10 +328,10 @@ def normpath(path):
|
|||
elif new_comps:
|
||||
new_comps.pop()
|
||||
comps = new_comps
|
||||
path = '/'.join(comps)
|
||||
path = slash.join(comps)
|
||||
if initial_slashes:
|
||||
path = '/'*initial_slashes + path
|
||||
return path or '.'
|
||||
path = slash*initial_slashes + path
|
||||
return path or dot
|
||||
|
||||
|
||||
def abspath(path):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue