* external.cc (fillout_pinfo): Return NULL rather than 0.
(exit_process): Guard against NULL pointer dereference found by Clang.
This commit is contained in:
parent
e14a5a7efa
commit
fb348d22af
|
@ -1,12 +1,17 @@
|
||||||
|
2012-07-02 Christopher Faylor <me.cygwin2012@cgf.cx>
|
||||||
|
|
||||||
|
* external.cc (fillout_pinfo): Return NULL rather than 0.
|
||||||
|
(exit_process): Guard against NULL pointer dereference found by Clang.
|
||||||
|
|
||||||
2012-07-02 Christopher Faylor <me.cygwin2012@cgf.cx>
|
2012-07-02 Christopher Faylor <me.cygwin2012@cgf.cx>
|
||||||
|
|
||||||
* mount.cc (mount_info::conv_to_win32_path): Eliminate unneeded
|
* mount.cc (mount_info::conv_to_win32_path): Eliminate unneeded
|
||||||
assignment found by CLANG.
|
assignment found by Clang.
|
||||||
|
|
||||||
2012-07-02 Christopher Faylor <me.cygwin2012@cgf.cx>
|
2012-07-02 Christopher Faylor <me.cygwin2012@cgf.cx>
|
||||||
|
|
||||||
* path.cc (symlink_info::check): Remove unneeded/unused variable found
|
* path.cc (symlink_info::check): Remove unneeded/unused variable found
|
||||||
by CLANG.
|
by Clang.
|
||||||
|
|
||||||
2012-07-02 Corinna Vinschen <corinna@vinschen.de>
|
2012-07-02 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
|
|
@ -108,7 +108,7 @@ fillout_pinfo (pid_t pid, int winpid)
|
||||||
{
|
{
|
||||||
i = 0;
|
i = 0;
|
||||||
pids.reset ();
|
pids.reset ();
|
||||||
return 0;
|
return NULL;
|
||||||
}
|
}
|
||||||
return &ep;
|
return &ep;
|
||||||
}
|
}
|
||||||
|
@ -186,10 +186,12 @@ static void
|
||||||
exit_process (UINT status, bool useTerminateProcess)
|
exit_process (UINT status, bool useTerminateProcess)
|
||||||
{
|
{
|
||||||
pid_t pid = getpid ();
|
pid_t pid = getpid ();
|
||||||
external_pinfo * ep = fillout_pinfo (pid, 1);
|
external_pinfo *ep = fillout_pinfo (pid, 1);
|
||||||
DWORD dwpid = ep ? ep->dwProcessId : pid;
|
DWORD dwpid = ep ? ep->dwProcessId : pid;
|
||||||
pinfo p (pid, PID_MAP_RW);
|
pinfo p (pid, PID_MAP_RW);
|
||||||
if ((dwpid == GetCurrentProcessId()) && (p->pid == ep->pid))
|
if (ep)
|
||||||
|
pid = ep->pid;
|
||||||
|
if ((dwpid == GetCurrentProcessId()) && (p->pid == pid))
|
||||||
p.set_exit_code ((DWORD)status);
|
p.set_exit_code ((DWORD)status);
|
||||||
if (useTerminateProcess)
|
if (useTerminateProcess)
|
||||||
TerminateProcess (GetCurrentProcess(), status);
|
TerminateProcess (GetCurrentProcess(), status);
|
||||||
|
|
Loading…
Reference in New Issue