From: Martin v. Löwis Date: Sun, 7 Sep 2003 20:42:29 +0000 (+0000) Subject: Only release buffer after file has been closed. Fixes #800824. X-Git-Tag: v2.4a1~1615 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7bbcde70d1c5e140e8ac6bc12506e0156f910d0e;p=python Only release buffer after file has been closed. Fixes #800824. Will backport to 2.2. --- diff --git a/Objects/fileobject.c b/Objects/fileobject.c index cdcacc41af..d7c9da5261 100644 --- a/Objects/fileobject.c +++ b/Objects/fileobject.c @@ -388,7 +388,6 @@ static PyObject * file_close(PyFileObject *f) { int sts = 0; - PyMem_Free(f->f_setbuf); if (f->f_fp != NULL) { if (f->f_close != NULL) { Py_BEGIN_ALLOW_THREADS @@ -398,6 +397,7 @@ file_close(PyFileObject *f) } f->f_fp = NULL; } + PyMem_Free(f->f_setbuf); if (sts == EOF) return PyErr_SetFromErrno(PyExc_IOError); if (sts != 0)