os.access now returns True on Windows for any existing directory.

This commit is contained in:
Martin v. Löwis 2007-12-03 22:39:10 +00:00
parent 7cc9c8bbe1
commit c8dbc92395
2 changed files with 7 additions and 2 deletions

View File

@ -46,6 +46,8 @@ Core and builtins
Library
-------
- os.access now returns True on Windows for any existing directory.
- Issue #1531: tarfile.py: Read fileobj from the current offset, do not
seek to the start.

View File

@ -1535,8 +1535,11 @@ finish:
/* File does not exist, or cannot read attributes */
return PyBool_FromLong(0);
/* Access is possible if either write access wasn't requested, or
the file isn't read-only. */
return PyBool_FromLong(!(mode & 2) || !(attr & FILE_ATTRIBUTE_READONLY));
the file isn't read-only, or if it's a directory, as there are
no read-only directories on Windows. */
return PyBool_FromLong(!(mode & 2)
|| !(attr & FILE_ATTRIBUTE_READONLY)
|| (attr & FILE_ATTRIBUTE_DIRECTORY));
#else
int res;
if (!PyArg_ParseTuple(args, "eti:access",