dont use the whole commandline as a fall back for execution searching because it could contain spaces. also, wrap commandline params in quotes so if there is a space in the path it still finds it. bug found by billgMS. Modified: trunk/reactos/subsys/system/cmd/cmd.c _____
Modified: trunk/reactos/subsys/system/cmd/cmd.c --- trunk/reactos/subsys/system/cmd/cmd.c 2005-10-03 18:49:44 UTC (rev 18249) +++ trunk/reactos/subsys/system/cmd/cmd.c 2005-10-03 20:28:29 UTC (rev 18250) @@ -423,15 +423,12 @@
/* search the PATH environment variable for the binary */ if (!SearchForExecutable (first, szFullName)) { - if (!SearchForExecutable (full, szFullName)) - { error_bad_command (); free (first); free (rest); free (full); free (szFullName); return; - }
}
@@ -1619,13 +1616,14 @@ ++i; if (i < argc) { - _tcscpy (commandline, argv[i]); + _tcscpy (commandline, _T(""")); + _tcscat (commandline, argv[i]); + _tcscat (commandline, _T(""")); while (++i < argc) { _tcscat (commandline, _T(" ")); _tcscat (commandline, argv[i]); } - ParseCommandLine(commandline); } }