summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristján Valur Jónsson <kristjan@ccpgames.com>2009-01-19 13:10:27 +0000
committerKristján Valur Jónsson <kristjan@ccpgames.com>2009-01-19 13:10:27 +0000
commit2e659ce36f9f48abc7515f83037274fbfb1f779e (patch)
tree75ea018db7a9dd7566a72c000a686a6cfe09a142
parent4b78233cbd845cdd4b49bc5999a2ea9ea028b277 (diff)
downloadcpython-git-2e659ce36f9f48abc7515f83037274fbfb1f779e.tar.gz
Issue 4957
Let os.ftruncate raise OSError like documented.
-rw-r--r--Lib/test/test_os.py3
-rw-r--r--Modules/posixmodule.c2
2 files changed, 2 insertions, 3 deletions
diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py
index 2c9d9bff69..5c94d7dbf8 100644
--- a/Lib/test/test_os.py
+++ b/Lib/test/test_os.py
@@ -570,10 +570,9 @@ class TestInvalidFD(unittest.TestCase):
if hasattr(os, "fpathconf"):
self.assertRaises(OSError, os.fpathconf, 10, "PC_NAME_MAX")
- #this is a weird one, it raises IOError unlike the others
def test_ftruncate(self):
if hasattr(os, "ftruncate"):
- self.assertRaises(IOError, os.ftruncate, 10, 0)
+ self.assertRaises(OSError, os.ftruncate, 10, 0)
def test_lseek(self):
if hasattr(os, "lseek"):
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index a1c344465d..915d30d3df 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -6633,7 +6633,7 @@ posix_ftruncate(PyObject *self, PyObject *args)
res = ftruncate(fd, length);
Py_END_ALLOW_THREADS
if (res < 0) {
- PyErr_SetFromErrno(PyExc_IOError);
+ posix_error();
return NULL;
}
Py_INCREF(Py_None);