]> Zhao Yanbai Git Server - minix.git/commitdiff
fix for -lsys assert(): call panic()
authorBen Gras <ben@minix3.org>
Fri, 24 Feb 2012 12:09:39 +0000 (13:09 +0100)
committerBen Gras <ben@minix3.org>
Fri, 24 Feb 2012 12:10:27 +0000 (13:10 +0100)
. call panic() instead of abort() so that stacktraces are printed
. also call printf(..) instead of fprintf(stderr, ..)

lib/libsys/assert.c

index 1c314d34540ace9a307c5554282f753dc97a9720..30d98fe1b3c2ef510ca36f06fdb94012a5206665 100644 (file)
@@ -5,17 +5,6 @@
 #include       <assert.h>
 #include       <stdio.h>
 
-#ifndef __NBSD_LIBC 
-#include       <minix/config.h>
-#include       <minix/const.h>
-#include       <minix/sysutil.h>
-
-void __bad_assertion(const char *mess) {
-       panic("%s", mess);
-}
-
-#else /* NBSD_LIBC */
-
 #include <sys/types.h>
 #include <stdlib.h>
 
@@ -24,14 +13,10 @@ __assert13(file, line, function, failedexpr)
        const char *file, *function, *failedexpr;
        int line;
 {
-
-       (void)fprintf(stderr,
-           "assertion \"%s\" failed: file \"%s\", line %d%s%s%s\n",
-           failedexpr, file, line,
-           function ? ", function \"" : "",
-           function ? function : "",
-           function ? "\"" : "");
-       abort();
+       (void)printf("%s:%d: assert \"%s\" failed", file, line, failedexpr);
+       if(function) printf(", function \"%s\"", function);
+       printf("\n");
+       panic("assert failed");
        /* NOTREACHED */
 }
 
@@ -44,5 +29,3 @@ __assert(file, line, failedexpr)
        __assert13(file, line, NULL, failedexpr);
        /* NOTREACHED */
 }
-
-#endif /* NBSD_LIBC */