Loading...
--- /dev/null
+++ Libc/Libc-498.1.1/stdlib/FreeBSD/exit.c.patch
@@ -0,0 +1,34 @@
+--- exit.c.orig 2006-08-08 16:13:56.000000000 -0700
++++ exit.c 2006-08-11 22:12:56.000000000 -0700
+@@ -44,15 +44,7 @@
+ #include "atexit.h"
+
+ void (*__cleanup)();
+-
+-/*
+- * This variable is zero until a process has created a thread.
+- * It is used to avoid calling locking functions in libc when they
+- * are not required. By default, libc is intended to be(come)
+- * thread-safe, but without a (significant) penalty to non-threaded
+- * processes.
+- */
+-int __isthreaded = 0;
++extern void __exit(int);
+
+ /*
+ * Exit, flushing stdio buffers if necessary.
+@@ -61,13 +53,8 @@
+ exit(status)
+ int status;
+ {
+- /* Ensure that the auto-initialization routine is linked in: */
+- extern int _thread_autoinit_dummy_decl;
+-
+- _thread_autoinit_dummy_decl = 1;
+-
+ __cxa_finalize(NULL);
+ if (__cleanup)
+ (*__cleanup)();
+- _exit(status);
++ __exit(status);
+ }