diff options
| author | apnadkarni <apnmbx-wits@yahoo.com> | 2025-09-19 08:30:18 (GMT) |
|---|---|---|
| committer | apnadkarni <apnmbx-wits@yahoo.com> | 2025-09-19 08:30:18 (GMT) |
| commit | 213e4f4959332b49207851a4f8ff762a63891a78 (patch) | |
| tree | e41ac1a8ae869d88178c23218e677b499f12b220 | |
| parent | b611cc9207753299a05ac841d41375bc05c24910 (diff) | |
| download | tcl-213e4f4959332b49207851a4f8ff762a63891a78.zip tcl-213e4f4959332b49207851a4f8ff762a63891a78.tar.gz tcl-213e4f4959332b49207851a4f8ff762a63891a78.tar.bz2 | |
Fix leak in zipfs encoding initialization
| -rw-r--r-- | generic/tclZipfs.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/generic/tclZipfs.c b/generic/tclZipfs.c index 31e13a3..63efc14 100644 --- a/generic/tclZipfs.c +++ b/generic/tclZipfs.c @@ -6447,16 +6447,17 @@ TclZipfsInitEncodingDirs(void) if (zipfs_literal_tcl_library == NULL) { return TCL_ERROR; } - Tcl_Obj *libDirObj = Tcl_NewStringObj(zipfs_literal_tcl_library, -1); Tcl_Obj *subDirObj, *searchPathObj; - + Tcl_Obj *libDirObj = Tcl_NewStringObj(zipfs_literal_tcl_library, -1); + Tcl_IncrRefCount(libDirObj); TclNewLiteralStringObj(subDirObj, "encoding"); Tcl_IncrRefCount(subDirObj); TclNewObj(searchPathObj); Tcl_ListObjAppendElement(NULL, searchPathObj, Tcl_FSJoinToPath(libDirObj, 1, &subDirObj)); - Tcl_DecrRefCount(subDirObj); Tcl_IncrRefCount(searchPathObj); + Tcl_DecrRefCount(subDirObj); + Tcl_DecrRefCount(libDirObj); Tcl_SetEncodingSearchPath(searchPathObj); Tcl_DecrRefCount(searchPathObj); /* Reinit system encoding after setting search path */ |
