exceptions in cygwin.dll?

Tim Newsham newsham@lava.net
Fri Mar 19 15:13:00 GMT 1999


    How does cygwin handle the following case:

    - a signal handler is registered for SIGSEGV
    - a program makes a call into cygwin.dll
    - cygwin.dll blocks signal handler dispatch
    - a memory fault occurs
    - the exception handler notices that there is a handler, and
      doesn't terminate the program
    - the exception handler notices that signal handlers dispatch
      is temporarily disallowed, and returns

I believe this is the series of events causing programs to
occasionally loop forever in an unkillable state printout
out ACCESS_VIOLATION messages, using an older DLL.  After an
exception has been "handled", the program returns excecution
to the faulting code and it happens all over again...  Is
this a realistic diagnosis?  Has this case been considered and 
dealt with in the current DLL?  What can be done to prevent
this from happening?  I've been unable to think of a workaround
for this case.

                                       Tim N.

More information about the Cygwin-developers mailing list