This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: 1.5.19: changes have broken Qt3


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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]