- Fix build failure of _cursesmodule.c building with -D_FORTIFY_SOURCE=2.

This commit is contained in:
Matthias Klose 2008-11-26 17:22:04 +00:00
parent 1ff110d8b3
commit 7e1b8faacc
2 changed files with 10 additions and 1 deletions

View File

@ -19,6 +19,8 @@ Core and Builtins
- Issue #4367: Python would segfault during compiling when the unicodedata
module couldn't be imported and \N escapes were present.
- Fix build failure of _cursesmodule.c building with -D_FORTIFY_SOURCE=2.
Library
-------

View File

@ -1857,6 +1857,7 @@ PyCurses_GetWin(PyCursesWindowObject *self, PyObject *stream)
int fd;
FILE *fp;
PyObject *data;
size_t datalen;
WINDOW *win;
PyCursesInitialised
@ -1886,7 +1887,13 @@ PyCurses_GetWin(PyCursesWindowObject *self, PyObject *stream)
remove(fn);
return NULL;
}
fwrite(PyBytes_AS_STRING(data), 1, PyBytes_GET_SIZE(data), fp);
datalen = PyBytes_GET_SIZE(data);
if (fwrite(PyBytes_AS_STRING(data), 1, datalen, fp) != datalen) {
Py_DECREF(data);
fclose(fp);
remove(fn);
return PyErr_SetFromErrnoWithFilename(PyExc_IOError, fn);
}
Py_DECREF(data);
fseek(fp, 0, 0);
win = getwin(fp);