about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--nptl/unwind.c7
2 files changed, 4 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index d6a7c77059..3f0cbbc7c1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2014-11-20  Roland McGrath  <roland@hack.frob.com>
 
+	* nptl/unwind.c (unwind_cleanup): Use __libc_fatal.
+
 	* nptl/pthread_setcanceltype.c [!SIGCANCEL]: Return ENOTSUP early for
 	PTHREAD_CANCEL_ASYNCHRONOUS.
 	* nptl/pthread_cancel.c [!SIGCANCEL]: Just abort rather than trying to
diff --git a/nptl/unwind.c b/nptl/unwind.c
index a71015a2f1..f109019b2e 100644
--- a/nptl/unwind.c
+++ b/nptl/unwind.c
@@ -18,6 +18,7 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <setjmp.h>
+#include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
@@ -103,11 +104,7 @@ unwind_cleanup (_Unwind_Reason_Code reason, struct _Unwind_Exception *exc)
 {
   /* When we get here a C++ catch block didn't rethrow the object.  We
      cannot handle this case and therefore abort.  */
-# define STR_N_LEN(str) str, strlen (str)
-  INTERNAL_SYSCALL_DECL (err);
-  INTERNAL_SYSCALL (write, err, 3, STDERR_FILENO,
-		    STR_N_LEN ("FATAL: exception not rethrown\n"));
-  abort ();
+  __libc_fatal ("FATAL: exception not rethrown\n");
 }
 
 #endif	/* have forced unwind */