diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 8f922455a..0594a4e87 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2005-12-01 Christopher Faylor + + * exceptions.cc (handle_exceptions): Translate a guard page exception + to a "SIGBUS". + 2005-12-01 Corinna Vinschen * mmap.cc: Make debug output more consistently. Fix some comments. diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index 098885108..bc0ea739a 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -479,10 +479,14 @@ handle_exceptions (EXCEPTION_RECORD *e0, void *frame, CONTEXT *in0, void *) si.si_signo = SIGALRM; break; + case STATUS_GUARD_PAGE_VIOLATION: + si.si_signo = SIGBUS; + si.si_code = BUS_OBJERR; + break; + case STATUS_ACCESS_VIOLATION: case STATUS_DATATYPE_MISALIGNMENT: case STATUS_ARRAY_BOUNDS_EXCEEDED: - case STATUS_GUARD_PAGE_VIOLATION: case STATUS_IN_PAGE_ERROR: case STATUS_NO_MEMORY: case STATUS_INVALID_DISPOSITION: