diff options
author | fvogel <fvogelnew1@free.fr> | 2017-12-31 08:49:43 (GMT) |
---|---|---|
committer | fvogel <fvogelnew1@free.fr> | 2017-12-31 08:49:43 (GMT) |
commit | 4797b26618c8f78062816353e9c2cc6299635266 (patch) | |
tree | 26e821faa25009c37f62fe323cbe66c3089de2c2 /macosx | |
parent | e3e0e99d10cf0d192475dc9761cc65d10952ef1b (diff) | |
parent | b46e6278979b46d9860d1a599a3fe0020c8c4732 (diff) | |
download | tk-4797b26618c8f78062816353e9c2cc6299635266.zip tk-4797b26618c8f78062816353e9c2cc6299635266.tar.gz tk-4797b26618c8f78062816353e9c2cc6299635266.tar.bz2 |
Fix [6525e1af25]: Potential Tcl_Encoding leak in macosx/tkMacOSXHLEvents.c. Thanks to Christian Werner.
Diffstat (limited to 'macosx')
-rw-r--r-- | macosx/tkMacOSXHLEvents.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/macosx/tkMacOSXHLEvents.c b/macosx/tkMacOSXHLEvents.c index 340c20c..468e41c 100644 --- a/macosx/tkMacOSXHLEvents.c +++ b/macosx/tkMacOSXHLEvents.c @@ -279,7 +279,7 @@ tkMacOSXProcessFiles( Tcl_Interp *interp, const char* procedure) { - Tcl_Encoding utf8 = Tcl_GetEncoding(NULL, "utf-8"); + Tcl_Encoding utf8; const AEDesc *fileSpecDesc = nil; AEDesc contents; char URLString[1 + URL_MAX_LENGTH]; @@ -331,6 +331,7 @@ tkMacOSXProcessFiles( Tcl_DStringInit(&command); Tcl_DStringAppend(&command, procedure, -1); + utf8 = Tcl_GetEncoding(NULL, "utf-8"); for (index = 1; index <= count; index++) { if (noErr != AEGetNthPtr(fileSpecDesc, index, typeFileURL, &keyword, @@ -349,6 +350,8 @@ tkMacOSXProcessFiles( Tcl_DStringAppendElement(&command, Tcl_DStringValue(&pathName)); Tcl_DStringFree(&pathName); } + + Tcl_FreeEncoding(utf8); AEDisposeDesc(&contents); /* @@ -361,7 +364,6 @@ tkMacOSXProcessFiles( Tcl_BackgroundException(interp, code); } Tcl_DStringFree(&command); - return; } /* |