1
0
Эх сурвалжийг харах

use libc-internal malloc for pthread_atfork

while no lock is held here making it a lock-order issue, replacement
malloc is likely to want to use pthread_atfork, possibly making the
call to malloc infinitely recursive.

even if not, there is no reason to prefer an application-provided
malloc here.
Rich Felker 2 жил өмнө
parent
commit
9532ae1318

+ 5 - 0
src/thread/pthread_atfork.c

@@ -3,6 +3,11 @@
 #include "libc.h"
 #include "lock.h"
 
+#define malloc __libc_malloc
+#define calloc undef
+#define realloc undef
+#define free undef
+
 static struct atfork_funcs {
 	void (*prepare)(void);
 	void (*parent)(void);