Index: tclAppInit.c =================================================================== RCS file: /cvsroot/tcl/tcl/win/tclAppInit.c,v retrieving revision 1.8 diff -c -r1.8 tclAppInit.c *** tclAppInit.c 21 Feb 2002 21:20:08 -0000 1.8 --- tclAppInit.c 11 Mar 2002 22:06:47 -0000 *************** *** 218,225 **** char *cmdLine, *p, *arg, *argSpace; char **argv; int argc, size, inquote, copy, slashes; ! cmdLine = GetCommandLine(); /* INTL: BUG */ /* * Precompute an overly pessimistic guess at the number of arguments --- 218,236 ---- char *cmdLine, *p, *arg, *argSpace; char **argv; int argc, size, inquote, copy, slashes; + WCHAR *cmdLineUni; + + cmdLineUni = GetCommandLineW(); ! /* calculate the size needed. */ ! size = WideCharToMultiByte(CP_OEMCP, 0, cmdLineUni, -1, 0, 0, NULL, NULL); ! cmdLine = Tcl_Alloc(size); ! ! /* INTL: BUG */ ! /* We should replace the conversion with CP_UTF8, but Tcl_Main() expects ! * argv to be dirty. So we can't clean it here. This, thus, creates a ! * unicode loss. */ ! WideCharToMultiByte(CP_OEMCP, 0, cmdLineUni, -1, cmdLine, size, NULL, NULL); /* * Precompute an overly pessimistic guess at the number of arguments *************** *** 298,301 **** --- 309,313 ---- *argcPtr = argc; *argvPtr = argv; + Tcl_Free(cmdLine); }