#
# patch "ChangeLog"
# from [d2dc7bc076bc2b6df921fa0c48682335e984e896]
# to [82f8ca03bb8bebf71c86d23e495b8de4ea0b1afc]
#
# patch "std_hooks.lua"
# from [cd6f8109837ec89d642901697933e23dd44faf1d]
# to [a09034cf15e000407c7fdbea620de03f79f8a73e]
#
# patch "win32/process.cc"
# from [cdc06d61438d63660a934c35d5f7cc72da786d19]
# to [f20f385828115ec65d4565e80d58822335c80bc2]
#
--- ChangeLog
+++ ChangeLog
@@ -1,8 +1,13 @@
2005-04-14 Matthew Gregan
* win32/process.cc: Fix build on MingW 3.2.0-rc[123] by adding
include.
+2005-04-14 Jon Bright
+ * win32/process.cc (process_spawn): Add some extra debug info
+ * std_hooks.lua (execute): If pid is -1, don't try and wait on
+ the process
+
2005-04-14 Matt Johnston
* change_set.cc (confirm_unique_entries_in_directories): use a
--- std_hooks.lua
+++ std_hooks.lua
@@ -15,7 +15,7 @@
local pid
local ret = -1
pid = spawn(path, unpack(arg))
- ret, pid = wait(pid)
+ if (pid ~= -1) then ret, pid = wait(pid) end
return ret
end
--- win32/process.cc
+++ win32/process.cc
@@ -35,13 +35,16 @@
realexelen = strlen(argv[0])+1+MAX_PATH;
realexe = (char*)malloc(realexelen);
if (realexe==NULL) return 0;
+ L(F("searching for exe: %s\n") % argv[0]);
if (SearchPath(NULL, argv[0], ".exe", realexelen, realexe, &filepart)==0)
{
+ L(F("SearchPath failed, err=%d\n") % GetLastError());
free(realexe);
return -1;
}
std::ostringstream cmdline_ss;
+ L(F("building command line\n"));
cmdline_ss << realexe;
for (const char *const *i = argv+1; *i; ++i)
{
@@ -74,6 +77,7 @@
/* We don't need to set any of the STARTUPINFO members */
if (CreateProcess(realexe, (char*)cmd.c_str(), NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)==0)
{
+ L(F("CreateProcess failed, err=%d\n") % GetLastError());
free(realexe);
return -1;
}