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] |
Hello, On Tue, 23 Aug 2005, znort wrote: > Could you tell/help me why the little code : [...] > Under cygwin gcc version 3.4.4 (cygming special) and Linux with gcc 3.3.5 > same "strange" results... (no segmentation fault with cygwin anyway) > > (notes : Under Solaris x86 (gcc3.4.4) it works perfectly !?) > > I think I've forgotten something but where ? See the attached file - it is modified version of your program. When the second SIGSEGV occurs SIGSEGV signals are blocked. This is because you exited the signal handler via a longjmp() and the signal mask is not cleared. To do what you want you must use sigsetjmp/siglongjmp pair of calls or remove SIGSEGV from the list of blocked signals.
Attachment:
longjmp.c
Description: Text document
-- 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] |