[uClibc-cvs] svn commit: trunk/uClibc/libc/stdlib

vapier at uclibc.org vapier at uclibc.org
Wed Jun 29 00:20:39 UTC 2005


Author: vapier
Date: 2005-06-28 18:20:39 -0600 (Tue, 28 Jun 2005)
New Revision: 10611

Log:
if we have a signal handler in place to cover SIGABRT, we have to make sure the code that unregisters it raises SIGABRT again so the program actually aborts

Modified:
   trunk/uClibc/libc/stdlib/abort.c


Changeset:
Modified: trunk/uClibc/libc/stdlib/abort.c
===================================================================
--- trunk/uClibc/libc/stdlib/abort.c	2005-06-29 00:18:33 UTC (rev 10610)
+++ trunk/uClibc/libc/stdlib/abort.c	2005-06-29 00:20:39 UTC (rev 10611)
@@ -90,6 +90,7 @@
 	/* Try to suicide with a SIGABRT.  */
 	if (been_there_done_that == 0) {
 	    been_there_done_that++;
+abort_it:
 	    UNLOCK;
 	    raise(SIGABRT);
 	    LOCK;
@@ -105,6 +106,8 @@
 	    __sigfillset (&act.sa_mask);
 	    act.sa_flags = 0;
 	    sigaction (SIGABRT, &act, NULL);
+
+	    goto abort_it;
 	}
 
 	/* Still here?  Try to suicide with an illegal instruction */
@@ -125,4 +128,3 @@
 	    ABORT_INSTRUCTION;
     }
 }
-




More information about the uClibc-cvs mailing list