From: SourceForge.net <no...@so...> - 2003-10-02 22:35:53
|
Bugs item #678400, was opened at 2003-01-31 13:27 Message generated for change (Comment added) made by davygrvy You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=678400&group_id=10894 Category: 25. Channel System Group: = 8.4.1 Status: Open Resolution: None Priority: 8 Submitted By: Kevin B KENNY (kennykb) Assigned to: David Gravereaux (davygrvy) Summary: exec quoting problem (io.test fails if wd contains spaces) Initial Comment: Win2k and WinXP: Attempting to run the regression test suite in a directory whose path name contains whitespace results in test failures in io-14.9 and io-29.32. Test suite output is attached. ---------------------------------------------------------------------- >Comment By: David Gravereaux (davygrvy) Date: 2003-10-02 15:35 Message: Logged In: YES user_id=7549 Here's a different XXX_BuildCommandLine() that I use in Expect-Win32. Does this solve stuff? BuildCommandLine() and the shell's setargv() must be complimentary. But more importantly, BuildCommandLine() must follow the CreateProcess() quoting rules exactly so it works for all applications, not just our shell. ---------------------------------------------------------------------- Comment By: Don Porter (dgp) Date: 2003-02-25 16:23 Message: Logged In: YES user_id=80530 See Bugs 672938 and 554068 ---------------------------------------------------------------------- Comment By: Andreas Kupries (andreas_kupries) Date: 2003-02-25 14:24 Message: Logged In: YES user_id=75003 David, I remember that we have at least one other bug report about quoting issues with exec/windows. And this test failure sort of smells like this bug. Can you have a look. The test uses 'array get/set' to transfer the contents of an array to a subprocess, as a single argument. But the space in the path messes this somehow up. ---------------------------------------------------------------------- Comment By: Andreas Kupries (andreas_kupries) Date: 2003-02-25 14:14 Message: Logged In: YES user_id=75003 Patch applied to CVS head. ---------------------------------------------------------------------- Comment By: Kevin B KENNY (kennykb) Date: 2003-02-25 13:21 Message: Logged In: YES user_id=99768 Andreas's patch fixes all but io-14.9, which appears to be a quoting problem in [exec]. Printing the elements of [lindex $argv 0] in the child process reveals: cat = {C:/Documents and = Settings/kennykb/My Documents/SourceForge/tcl/win/cat} = longfile {C:/Documents = and Settings/kennykb/My = Documents/SourceForge/tcl/win/longfile} script = {C:/Documents and = Settings/kennykb/My Documents/SourceForge/tcl/win/script} = test1 {C:/Documents = and Settings/kennykb/My = Documents/SourceForge/tcl/win/test1} test2 = {C:/Documents and = Settings/kennykb/My Documents/SourceForge/tcl/win/test2} = test3 {C:/Documents = and Settings/kennykb/My = Documents/SourceForge/tcl/win/test3} ---------------------------------------------------------------------- Comment By: Andreas Kupries (andreas_kupries) Date: 2003-02-24 16:08 Message: Logged In: YES user_id=75003 Hm, the 29.32 does not look like a whitespace problem. Permission denied. It doesn't happen if there is no whitespace in the path ? ---------------------------------------------------------------------- Comment By: Andreas Kupries (andreas_kupries) Date: 2003-02-24 16:04 Message: Logged In: YES user_id=75003 On linux I saw io-14.9 and io-48.3. Enclosed a tentative patch. It solves the failures I saw, and I also did some changes which might solve 29.32. I am not sure. Please test. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=678400&group_id=10894 |