From 2adf2109938bcdf7c527ade6ba8b5d631080e115 Mon Sep 17 00:00:00 2001
From: Neal Norwitz <nnorwitz@gmail.com>
Date: Wed, 9 Jun 2004 01:46:02 +0000
Subject: [PATCH] Ensure path is initialized to prevent freeing random memory
 (reported by Thomas Heller).  If have_unicode_filename is set, path looks
 like it will not be used, so there's no need to free it.

---
 Modules/posixmodule.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index 599d88a380..a375dcb6f5 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -1994,7 +1994,7 @@ second form is used, set the access and modified times to the current time.");
 static PyObject *
 posix_utime(PyObject *self, PyObject *args)
 {
-	char *path;
+	char *path = NULL;
 	long atime, mtime, ausec, musec;
 	int res;
 	PyObject* arg;
@@ -2087,10 +2087,8 @@ posix_utime(PyObject *self, PyObject *args)
 	}
 	if (res < 0) {
 #ifdef Py_WIN_WIDE_FILENAMES
-		if (have_unicode_filename) {
-			PyMem_Free(path);
+		if (have_unicode_filename)
 			return posix_error_with_unicode_filename(wpath);
-		}
 #endif /* Py_WIN_WIDE_FILENAMES */
 		return posix_error_with_allocated_filename(path);
 	}
-- 
2.50.1