]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Only release buffer after file has been closed. Fixes #800824.
authorMartin v. Löwis <martin@v.loewis.de>
Sun, 7 Sep 2003 20:43:24 +0000 (20:43 +0000)
committerMartin v. Löwis <martin@v.loewis.de>
Sun, 7 Sep 2003 20:43:24 +0000 (20:43 +0000)
Objects/fileobject.c

index bf00039183005dc260386289288dbe6b350b65bf..3e41704dcf006dfdafc204a20855f0b85cb9bc81 100644 (file)
@@ -387,7 +387,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
@@ -397,6 +396,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)