~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/osutils.py

  • Committer: Vincent Ladeuil
  • Date: 2011-09-27 11:48:50 UTC
  • mto: This revision was merged to the branch mainline in revision 6173.
  • Revision ID: v.ladeuil+lp@free.fr-20110927114850-338r2mns0138klv0
Global options respect their hidden attribute

Show diffs side-by-side

added added

removed removed

Lines of Context:
279
279
    # copy posixpath.abspath, but use os.getcwdu instead
280
280
    if not posixpath.isabs(path):
281
281
        path = posixpath.join(getcwd(), path)
282
 
    return _posix_normpath(path)
 
282
    return posixpath.normpath(path)
283
283
 
284
284
 
285
285
def _posix_realpath(path):
286
286
    return posixpath.realpath(path.encode(_fs_enc)).decode(_fs_enc)
287
287
 
288
288
 
289
 
def _posix_normpath(path):
290
 
    path = posixpath.normpath(path)
291
 
    # Bug 861008: posixpath.normpath() returns a path normalized according to
292
 
    # the POSIX standard, which stipulates (for compatibility reasons) that two
293
 
    # leading slashes must not be simplified to one, and only if there are 3 or
294
 
    # more should they be simplified as one. So we treat the leading 2 slashes
295
 
    # as a special case here by simply removing the first slash, as we consider
296
 
    # that breaking POSIX compatibility for this obscure feature is acceptable.
297
 
    # This is not a paranoid precaution, as we notably get paths like this when
298
 
    # the repo is hosted at the root of the filesystem, i.e. in "/".    
299
 
    if path.startswith('//'):
300
 
        path = path[1:]
301
 
    return path
302
 
 
303
 
 
304
289
def _win32_fixdrive(path):
305
290
    """Force drive letters to be consistent.
306
291
 
394
379
abspath = _posix_abspath
395
380
realpath = _posix_realpath
396
381
pathjoin = os.path.join
397
 
normpath = _posix_normpath
 
382
normpath = os.path.normpath
398
383
getcwd = os.getcwdu
399
384
rename = os.rename
400
385
dirname = os.path.dirname