diff options
-rw-r--r-- | winsup/cygwin/ChangeLog | 5 | ||||
-rw-r--r-- | winsup/cygwin/exceptions.cc | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 3507f5a79..9d0662dec 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +Sun Sep 17 22:18:39 2000 Christopher Faylor <cgf@cygnus.com> + + * exceptions.cc (interruptible): Return 0 if given an address in + uncommitted memory. + 2000-09-16 Egor Duda <deo@logos-m.ru> * signal.cc (sleep): If interrupted by signal, return the diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index 82ef8861c..5fcb69ae9 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -601,7 +601,7 @@ interruptible (DWORD pc, int testvalid = 0) /* Apparently Windows 95 can sometimes return bogus addresses from GetThreadContext. These resolve to an allocation base == 0. These should *never* be treated as interruptible. */ - if (!h) + if (!h || m.State != MEM_COMMIT) res = 0; else if (testvalid) res = 1; /* All we wanted to know was if this was a valid module. */ |