diff Python/traceback.c @ 36878:accfb156f9cc 2.4

Backport r42894: SF #1444030 Fix several potential defects found by Coverity.
author Hye-Shik Chang <hyeshik@gmail.com>
date Tue, 07 Mar 2006 15:59:09 +0000
parents 49ec0d8f08ec
children
line wrap: on
line diff
--- a/Python/traceback.c	Tue Mar 07 14:16:02 2006 +0000
+++ b/Python/traceback.c	Tue Mar 07 15:59:09 2006 +0000
@@ -184,8 +184,12 @@
 	}
 	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 {