From 9e672e1872be175e7819a84e113b472806d4c5c9 Mon Sep 17 00:00:00 2001 From: pooryorick Date: Sat, 18 Mar 2023 23:25:44 +0000 Subject: [PATCH] Fix memory leak in ZipFSPathInFilesystemProc(). --- generic/tclZipfs.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/generic/tclZipfs.c b/generic/tclZipfs.c index 1653dbe4d86..e7a9b4d3813 100644 --- a/generic/tclZipfs.c +++ b/generic/tclZipfs.c @@ -5221,13 +5221,15 @@ ZipFSPathInFilesystemProc( Tcl_HashSearch search; int ret = -1; size_t len; + Tcl_Obj *normPathPtr; char *path; - pathPtr = Tcl_FSGetNormalizedPath(NULL, pathPtr); - if (!pathPtr) { + normPathPtr = Tcl_FSGetNormalizedPath(NULL, pathPtr); + if (!normPathPtr) { return -1; } - path = Tcl_GetStringFromObj(pathPtr, &len); + path = Tcl_GetStringFromObj(normPathPtr, &len); + Tcl_DecrRefCount(normPathPtr); if (strncmp(path, ZIPFS_VOLUME, ZIPFS_VOLUME_LEN) != 0) { return -1; }