浏览代码

Geez I'm an idiot some times. I shouldn't code when I'm exhausted.
I _totally_ screwed up the locking on exit and atexit such that it
didn't do any good at all.
-Erik

Eric Andersen 23 年之前
父节点
当前提交
9a34fd5b88
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      libc/stdlib/atexit.c

+ 2 - 1
libc/stdlib/atexit.c

@@ -43,7 +43,7 @@
 
 #ifdef __UCLIBC_HAS_THREADS__
 #include <pthread.h>
-static pthread_mutex_t mylock = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
+extern pthread_mutex_t mylock;
 # define LOCK	pthread_mutex_lock(&mylock)
 # define UNLOCK	pthread_mutex_unlock(&mylock);
 #else
@@ -168,6 +168,7 @@ void __exit_handler(int status)
 #ifdef L_exit
 extern void weak_function _stdio_term(void);
 void (*__exit_cleanup) (int) = 0;
+pthread_mutex_t mylock = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
 
 /*
  * Normal program termination