Ralf Habacker wrote: > C:\cygwin\home\Habacker\src\pthreads-snap-2005-03-08\tests>strace > mutex1n | grep C0000005 > - --- Process 4872, exception C0000005 at 610B1005 > 155 78759 [main] mutex1n 4872 _cygtls::handle_exceptions: In > cygwin_except_handler exc 0xC0000005 at 0x610B1005 sp 0x22CC00 > > [...] > > Index: thread.cc > =================================================================== > RCS file: /cvs/src/src/winsup/cygwin/thread.cc,v > retrieving revision 1.198 > diff -u -b -B -r1.198 thread.cc > - --- thread.cc 22 Mar 2006 20:38:26 -0000 1.198 > +++ thread.cc 23 May 2006 13:16:57 -0000 > @@ -118,6 +118,9 @@ > { > verifyable_object **object = (verifyable_object **) objectptr; > + if (*object == NULL) > + return INVALID_OBJECT; > + > myfault efault; > if (efault.faulted ()) > return INVALID_OBJECT;
Um, this can't be right. The entire purpose of that "myfault efault" line right there is to install a handler that catches any fault that occurs until efault's destructor runs and return INVALID_OBJECT. So checking for NULL is not necessary; the c0000005 exception is caught and handled gracefully. Whatever testcase failure you are seeing is not because of this. Brian -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/