Tcl Source Code

Artifact [f86dfc9506]
Login

Artifact f86dfc95061542bd5bc350ac530199b0e35d1fc0:

Attachment "432499.diff" to ticket [432499ffff] added by andreas_kupries 2001-08-24 04:20:45.
Index: ChangeLog
===================================================================
RCS file: /cvsroot/tcl/tcl/ChangeLog,v
retrieving revision 1.526
diff -u -r1.526 ChangeLog
--- ChangeLog	2001/08/16 11:01:55	1.526
+++ ChangeLog	2001/08/23 21:08:51
@@ -1,3 +1,13 @@
+2001-08-23  Andreas Kupries <[email protected]>
+
+	* win/tclWinPipe.c (BuildCommandLine): Fixed tcl Bug
+	  [432499]. Part of the code used the non-absolute path to the
+	  executable to determine quoting. This failed if the absolute
+	  path contained spaces, but the application name itself not. This
+	  bug caused no trouble on Win NT 5, but does for other variants
+	  in the Win* family. Report and fix due to Ken Poole
+	  <[email protected]>.
+
 2001-08-16  David Gravereaux <[email protected]>
 
 	* tools/tcl.wse.in:
Index: win/tclWinPipe.c
===================================================================
RCS file: /cvsroot/tcl/tcl/win/tclWinPipe.c,v
retrieving revision 1.18
diff -u -r1.18 tclWinPipe.c
--- win/tclWinPipe.c	2001/07/31 19:12:08	1.18
+++ win/tclWinPipe.c	2001/08/23 21:08:51
@@ -1549,10 +1549,10 @@
 	}
 
 	quote = 0;
-	if (argv[i][0] == '\0') {
+	if (arg[0] == '\0') {
 	    quote = 1;
 	} else {
-	    for (start = argv[i]; *start != '\0'; start++) {
+	    for (start = arg; *start != '\0'; start++) {
 		if (isspace(*start)) { /* INTL: ISO space. */
 		    quote = 1;
 		    break;