From dcc20b85632b8a4ffa43563080ab4ea08b4e9914 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Sat, 26 Feb 2011 13:38:35 +0000 Subject: [PATCH] Check error return from _parse_off_t(), and remove cruft from the 2->3 transition. --- Modules/posixmodule.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 077343e995..985a01e733 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -369,8 +369,7 @@ _parse_off_t(PyObject* arg, void* addr) #if !defined(HAVE_LARGEFILE_SUPPORT) *((off_t*)addr) = PyLong_AsLong(arg); #else - *((off_t*)addr) = PyLong_Check(arg) ? PyLong_AsLongLong(arg) - : PyLong_AsLong(arg); + *((off_t*)addr) = PyLong_AsLongLong(arg); #endif if (PyErr_Occurred()) return 0; @@ -5772,8 +5771,7 @@ posix_lseek(PyObject *self, PyObject *args) #if !defined(HAVE_LARGEFILE_SUPPORT) pos = PyLong_AsLong(posobj); #else - pos = PyLong_Check(posobj) ? - PyLong_AsLongLong(posobj) : PyLong_AsLong(posobj); + pos = PyLong_AsLongLong(posobj); #endif if (PyErr_Occurred()) return NULL; @@ -6030,7 +6028,8 @@ done: return Py_BuildValue("nO", ret, Py_None); } #endif - _parse_off_t(offobj, &offset); + if (!_parse_off_t(offobj, &offset)) + return NULL; Py_BEGIN_ALLOW_THREADS ret = sendfile(out, in, &offset, count); Py_END_ALLOW_THREADS -- 2.50.1