Browse Source

Oops... forgot to update abort.c.

Manuel Novoa III 23 years ago
parent
commit
e26e735ab4
1 changed files with 7 additions and 4 deletions
  1. 7 4
      libc/stdlib/abort.c

+ 7 - 4
libc/stdlib/abort.c

@@ -46,7 +46,7 @@ Cambridge, MA 02139, USA.  */
 #define ABORT_INSTRUCTION
 #endif
 
-extern void weak_function __stdio_flush_buffers(void);
+extern void weak_function _stdio_term(void);
 extern void _exit __P((int __status)) __attribute__ ((__noreturn__));
 static int been_there_done_that = 0;
 
@@ -60,9 +60,12 @@ void abort(void)
 	sigprocmask(SIG_UNBLOCK, &sigset, (sigset_t *) NULL);
     }
 
-    /* If we are using stdio, flush all open streams */
-    if (__stdio_flush_buffers)
-	__stdio_flush_buffers();
+    /* If we are using stdio, try to shut it down.  At the very least,
+	 * this will attempt to commit all buffered writes.  It may also
+	 * unbuffer all writable files, or close them outright.
+	 * Check the stdio routines for details. */
+    if (_stdio_term)
+		_stdio_term();
 
     while (1) {
 	/* Try to suicide with a SIGABRT.  */