diff options
| author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2019-10-22 21:36:21 (GMT) |
|---|---|---|
| committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2019-10-22 21:36:21 (GMT) |
| commit | 8726aabaded70c01ab3fac21162ce53b220b81ea (patch) | |
| tree | 47b050309f5ad0865f97743d42ff1ebb570deb96 /unix/tclUnixFile.c | |
| parent | d14ab3904746a34a3916f45e037b6df3ecff10fa (diff) | |
| parent | 566db2779b71036ff40e31affc73126c2a090773 (diff) | |
| download | tcl-8726aabaded70c01ab3fac21162ce53b220b81ea.zip tcl-8726aabaded70c01ab3fac21162ce53b220b81ea.tar.gz tcl-8726aabaded70c01ab3fac21162ce53b220b81ea.tar.bz2 | |
Merge 8.7
Diffstat (limited to 'unix/tclUnixFile.c')
| -rw-r--r-- | unix/tclUnixFile.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/unix/tclUnixFile.c b/unix/tclUnixFile.c index 352c04e..c81ebb6 100644 --- a/unix/tclUnixFile.c +++ b/unix/tclUnixFile.c @@ -269,7 +269,8 @@ TclpMatchInDirectory( Tcl_DString dsOrig; /* utf-8 encoding of dir */ Tcl_DStringInit(&dsOrig); - dirName = TclGetStringFromObj(fileNamePtr, &dirLength); + Tcl_Encoding encoding; + dirName = TclGetStringFromObj(fileNamePtr, &dirLength); Tcl_DStringAppend(&dsOrig, dirName, dirLength); /* @@ -363,7 +364,9 @@ TclpMatchInDirectory( * and pattern. If so, add the file to the result. */ - utfname = Tcl_ExternalToUtfDString(NULL, entryPtr->d_name, -1, + + encoding = Tcl_GetEncoding(interp ,NULL); + utfname = Tcl_ExternalToUtfDString(encoding, entryPtr->d_name, -1, &utfDs); if (Tcl_StringCaseMatch(utfname, pattern, 0)) { int typeOk = 1; @@ -378,7 +381,7 @@ TclpMatchInDirectory( if (typeOk) { Tcl_ListObjAppendElement(interp, resultPtr, TclNewFSPathObj(pathPtr, utfname, - Tcl_DStringLength(&utfDs))); + Tcl_DStringLength(&utfDs), encoding)); } } Tcl_DStringFree(&utfDs); |
