diff options
Diffstat (limited to 'winsup/cygwin/sigproc.cc')
-rw-r--r-- | winsup/cygwin/sigproc.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc index dff073049..6c5393795 100644 --- a/winsup/cygwin/sigproc.cc +++ b/winsup/cygwin/sigproc.cc @@ -1056,10 +1056,11 @@ stopped_or_terminated (waitq *parent_w, _pinfo *child) static void talktome () { - winpids pids; + winpids pids ((DWORD) PID_MAP_RW); for (unsigned i = 0; i < pids.npids; i++) if (pids[i]->hello_pid == myself->pid) - pids[i]->commune_recv (); + if (!IsBadWritePtr (pids[i], sizeof (_pinfo))) + pids[i]->commune_recv (); } #define RC_MAIN 0 |