Issue #17169: Restore errno in tempfile exceptions.

This commit is contained in:
Serhiy Storchaka 2013-02-09 22:27:23 +02:00
commit 26cab56542
2 changed files with 13 additions and 5 deletions

View file

@ -31,6 +31,7 @@ import warnings as _warnings
import sys as _sys
import io as _io
import os as _os
import errno as _errno
from random import Random as _Random
try:
@ -183,7 +184,9 @@ def _get_default_tempdir():
pass
except OSError:
break # no point trying more names in this directory
raise FileNotFoundError("No usable temporary directory found in %s" % dirlist)
raise FileNotFoundError(_errno.ENOENT,
"No usable temporary directory found in %s" %
dirlist)
_name_sequence = None
@ -216,7 +219,8 @@ def _mkstemp_inner(dir, pre, suf, flags):
except FileExistsError:
continue # try again
raise FileExistsError("No usable temporary file name found")
raise FileExistsError(_errno.EEXIST,
"No usable temporary file name found")
# User visible interfaces.
@ -303,7 +307,8 @@ def mkdtemp(suffix="", prefix=template, dir=None):
except FileExistsError:
continue # try again
raise FileExistsError("No usable temporary directory name found")
raise FileExistsError(_errno.EEXIST,
"No usable temporary directory name found")
def mktemp(suffix="", prefix=template, dir=None):
"""User-callable function to return a unique temporary file name. The
@ -332,7 +337,8 @@ def mktemp(suffix="", prefix=template, dir=None):
if not _exists(file):
return file
raise FileExistsError("No usable temporary filename found")
raise FileExistsError(_errno.EEXIST,
"No usable temporary filename found")
class _TemporaryFileWrapper: