* exceptions.cc (dump_exception): Use %W instead of %s for printing
progname. * fork.cc (frok::parent): Fix typos in debug output. * spawn.cc (spawn_guts): Copy wide Win32 filename into _pinfo::progname, rather than native NT name.
This commit is contained in:
parent
a6076c2cdc
commit
e7daa3ed75
|
@ -1,3 +1,11 @@
|
|||
2010-06-29 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* exceptions.cc (dump_exception): Use %W instead of %s for printing
|
||||
progname.
|
||||
* fork.cc (frok::parent): Fix typos in debug output.
|
||||
* spawn.cc (spawn_guts): Copy wide Win32 filename into _pinfo::progname,
|
||||
rather than native NT name.
|
||||
|
||||
2010-06-28 Christopher Faylor <me+cygwin@cgf.cx>
|
||||
|
||||
* fork.cc (frok::parent): Improve error message.
|
||||
|
|
|
@ -193,7 +193,7 @@ dump_exception (EXCEPTION_RECORD *e, CONTEXT *in)
|
|||
small_printf ("Signal %d at eip=%08x\r\n", e->ExceptionCode, in->Eip);
|
||||
small_printf ("eax=%08x ebx=%08x ecx=%08x edx=%08x esi=%08x edi=%08x\r\n",
|
||||
in->Eax, in->Ebx, in->Ecx, in->Edx, in->Esi, in->Edi);
|
||||
small_printf ("ebp=%08x esp=%08x program=%s, pid %u, thread %s\r\n",
|
||||
small_printf ("ebp=%08x esp=%08x program=%W, pid %u, thread %s\r\n",
|
||||
in->Ebp, in->Esp, myself->progname, myself->pid, cygthread::name ());
|
||||
small_printf ("cs=%04x ds=%04x es=%04x fs=%04x gs=%04x ss=%04x\r\n",
|
||||
in->SegCs, in->SegDs, in->SegEs, in->SegFs, in->SegGs, in->SegSs);
|
||||
|
|
|
@ -342,7 +342,7 @@ frok::parent (volatile char * volatile stack_here)
|
|||
si.lpReserved2 = (LPBYTE) &ch;
|
||||
si.cbReserved2 = sizeof (ch);
|
||||
|
||||
syscall_printf ("CreateProcess (%W, %W, 0, 0, 1, %p, 0, 0, %p, %p)",
|
||||
syscall_printf ("CreateProcessW (%W, %W, 0, 0, 1, %p, 0, 0, %p, %p)",
|
||||
myself->progname, myself->progname, c_flags, &si, &pi);
|
||||
bool locked = __malloc_lock ();
|
||||
time_t start_time = time (NULL);
|
||||
|
@ -367,7 +367,7 @@ frok::parent (volatile char * volatile stack_here)
|
|||
if (!rc)
|
||||
{
|
||||
this_errno = geterrno_from_win_error ();
|
||||
__small_sprintf (errbuf, "CreatProcessW failed for '%W'", myself->progname);
|
||||
__small_sprintf (errbuf, "CreateProcessW failed for '%W'", myself->progname);
|
||||
error = errbuf;
|
||||
memset (&pi, 0, sizeof (pi));
|
||||
goto cleanup;
|
||||
|
|
|
@ -692,8 +692,8 @@ loop:
|
|||
myself->dwProcessId = pi.dwProcessId;
|
||||
strace.execing = 1;
|
||||
myself.hProcess = hExeced = pi.hProcess;
|
||||
wcscpy (myself->progname, real_path.get_nt_native_path ()->Buffer); // FIXME: race?
|
||||
sigproc_printf ("new process name %S", myself->progname);
|
||||
real_path.get_wide_win32_path (myself->progname);
|
||||
sigproc_printf ("new process name %W", myself->progname);
|
||||
/* If wr_proc_pipe doesn't exist then this process was not started by a cygwin
|
||||
process. So, we need to wait around until the process we've just "execed"
|
||||
dies. Use our own wait facility to wait for our own pid to exit (there
|
||||
|
@ -733,7 +733,7 @@ loop:
|
|||
child->dwProcessId = pi.dwProcessId;
|
||||
child.hProcess = pi.hProcess;
|
||||
|
||||
wcscpy (child->progname, real_path.get_nt_native_path ()->Buffer);
|
||||
real_path.get_wide_win32_path (child->progname);
|
||||
/* FIXME: This introduces an unreferenced, open handle into the child.
|
||||
The purpose is to keep the pid shared memory open so that all of
|
||||
the fields filled out by child.remember do not disappear and so there
|
||||
|
|
Loading…
Reference in New Issue