Revision: 9799 http://pure-data.svn.sourceforge.net/pure-data/?rev=9799&view=rev Author: eighthave Date: 2008-05-14 10:41:17 -0700 (Wed, 14 May 2008)
Log Message: ----------- added patch to fix problems of saving patches into folders with extended chars in it
Added Paths: ----------- trunk/packages/patches/fix_encoding_bug_1572290-0.41.4.patch
Added: trunk/packages/patches/fix_encoding_bug_1572290-0.41.4.patch =================================================================== --- trunk/packages/patches/fix_encoding_bug_1572290-0.41.4.patch (rev 0) +++ trunk/packages/patches/fix_encoding_bug_1572290-0.41.4.patch 2008-05-14 17:41:17 UTC (rev 9799) @@ -0,0 +1,37 @@ +Index: t_tkcmd.c +=================================================================== +--- t_tkcmd.c (revision 9782) ++++ t_tkcmd.c (working copy) +@@ -509,10 +509,14 @@ + + static int pdCmd(ClientData cd, Tcl_Interp *interp, int argc, char **argv) + { ++ Tcl_DString dstring; /* used to convert the Tcl string to the OS encoding */ ++ char *dstring_char; + if (argc == 2) + { + int n = strlen(argv[1]); +- if (send(sockfd, argv[1], n, 0) < n) ++ /* NULL as first arg means use the current system encoding */ ++ dstring_char = Tcl_UtfToExternalDString(NULL, argv[1], -1, &dstring); ++ if (send(sockfd, dstring_char, n, 0) < n) + { + perror("stdout"); + tcl_mess("exit\n"); +@@ -534,12 +538,15 @@ + if (i > 1) strcat(buf, " "); + strcat(buf, argv[i]); + } +- if (send(sockfd, buf, strlen(buf), 0) < 0) ++ /* NULL as first arg means use the current system encoding */ ++ dstring_char = Tcl_UtfToExternalDString(NULL, buf, -1, &dstring); ++ if (send(sockfd, dstring_char, strlen(dstring_char), 0) < 0) + { + perror("stdout"); + tcl_mess("exit\n"); + } + } ++ Tcl_DStringFree(&dstring); + return (TCL_OK); + } +
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.