From 9053d7548592f4a583d99595d9bbf0050e920da4 Mon Sep 17 00:00:00 2001 From: Benjamin Peterson Date: Mon, 19 Jan 2009 17:53:36 +0000 Subject: [PATCH] Merged revisions 68763,68773 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r68763 | kristjan.jonsson | 2009-01-19 07:10:27 -0600 (Mon, 19 Jan 2009) | 2 lines Issue 4957 Let os.ftruncate raise OSError like documented. ........ r68773 | benjamin.peterson | 2009-01-19 09:51:27 -0600 (Mon, 19 Jan 2009) | 1 line simplify code ........ --- Lib/test/test_os.py | 3 +-- Modules/posixmodule.c | 6 ++---- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py index f7471e55b9f..a2e611fe9e0 100644 --- a/Lib/test/test_os.py +++ b/Lib/test/test_os.py @@ -624,10 +624,9 @@ def test_fpathconf(self): 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 490999386ab..69b69787c55 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -5114,10 +5114,8 @@ posix_ftruncate(PyObject *self, PyObject *args) Py_BEGIN_ALLOW_THREADS res = ftruncate(fd, length); Py_END_ALLOW_THREADS - if (res < 0) { - PyErr_SetFromErrno(PyExc_IOError); - return NULL; - } + if (res < 0) + return posix_error(); Py_INCREF(Py_None); return Py_None; }