diff options
Diffstat (limited to 'Python/traceback.c')
-rw-r--r-- | Python/traceback.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Python/traceback.c b/Python/traceback.c index f40cfb4..cb568da 100644 --- a/Python/traceback.c +++ b/Python/traceback.c @@ -184,8 +184,12 @@ tb_displayline(PyObject *f, char *filename, int lineno, char *name) } PyOS_snprintf(linebuf, sizeof(linebuf), FMT, filename, lineno, name); err = PyFile_WriteString(linebuf, f); - if (xfp == NULL || err != 0) + if (xfp == NULL) return err; + else if (err != 0) { + fclose(xfp); + return err; + } for (i = 0; i < lineno; i++) { char* pLastChar = &linebuf[sizeof(linebuf)-2]; do { |