Documented Bastian's patch.

Made handling OSError in 'mkpath()' more standard.
This commit is contained in:
Greg Ward 2000-03-29 02:56:34 +00:00
parent da4d1aef4e
commit 739d06689d
1 changed files with 9 additions and 7 deletions

View File

@ -24,11 +24,13 @@ PATH_CREATED = {}
# succeed in that case).
def mkpath (name, mode=0777, verbose=0, dry_run=0):
"""Create a directory and any missing ancestor directories. If the
directory already exists, return silently. Raise
DistutilsFileError if unable to create some directory along the
way (eg. some sub-path exists, but is a file rather than a
directory). If 'verbose' is true, print a one-line summary of
each mkdir to stdout."""
directory already exists (or if 'name' is the empty string, which
means the current directory, which of course exists), then do
nothing. Raise DistutilsFileError if unable to create some
directory along the way (eg. some sub-path exists, but is a file
rather than a directory). If 'verbose' is true, print a one-line
summary of each mkdir to stdout. Return the list of directories
actually created."""
global PATH_CREATED
@ -71,9 +73,9 @@ def mkpath (name, mode=0777, verbose=0, dry_run=0):
try:
os.mkdir (head)
created_dirs.append(head)
except os.error, (errno, errstr):
except OSError, exc:
raise DistutilsFileError, \
"could not create '%s': %s" % (head, errstr)
"could not create '%s': %s" % (head, exc[-1])
PATH_CREATED[head] = 1
return created_dirs