cpython: 62b9bfbc3356 (original) (raw)

Mercurial > cpython

changeset 77951:62b9bfbc3356

Issue #15261: Stop os.stat(fd) crashing on Windows when fd not open. [#15261]

Richard Oudkerk shibturn@gmail.com
date Fri, 06 Jul 2012 12:05:32 +0100
parents 61e6ac40c816
children b7cfdb48af62
files Doc/library/os.path.rst Lib/test/test_genericpath.py Lib/test/test_os.py Misc/NEWS Modules/posixmodule.c
diffstat 5 files changed, 37 insertions(+), 6 deletions(-)[+] [-] Doc/library/os.path.rst 11 Lib/test/test_genericpath.py 10 Lib/test/test_os.py 13 Misc/NEWS 2 Modules/posixmodule.c 7

line wrap: on

line diff

--- a/Doc/library/os.path.rst +++ b/Doc/library/os.path.rst @@ -70,11 +70,16 @@ applications should use string objects t .. function:: exists(path)

+ .. function:: lexists(path)

--- a/Lib/test/test_genericpath.py +++ b/Lib/test/test_genericpath.py @@ -146,6 +146,16 @@ class GenericTest(unittest.TestCase): f.close() support.unlink(support.TESTFN)

+ def test_isdir(self): self.assertIs(self.pathmodule.isdir(support.TESTFN), False) f = open(support.TESTFN, "wb")

--- a/Lib/test/test_os.py +++ b/Lib/test/test_os.py @@ -473,6 +473,19 @@ class StatAttributeTests(unittest.TestCa return self.fail("Could not stat pagefile.sys")

+ from test import mapping_tests class EnvironTests(mapping_tests.BasicTestMappingProtocol):

--- a/Misc/NEWS +++ b/Misc/NEWS @@ -23,6 +23,8 @@ Core and Builtins Library ------- +- Issue #15261: Stop os.stat(fd) crashing on Windows when fd not open. +

--- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -1829,7 +1829,10 @@ win32_fstat(int file_number, struct win3 HANDLE h; int type;

/* Protocol violation: we explicitly clear errno, instead of setting it to a POSIX error. Callers should use GetLastError. */ @@ -8244,8 +8247,6 @@ posix_fstat(PyObject *self, PyObject ar / on OpenVMS we must ensure that all bytes are written to the file */ fsync(fd); #endif