Explorar o código

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 %!s(int64=2) %!d(string=hai) anos
pai
achega
9532ae1318
Modificáronse 1 ficheiros con 5 adicións e 0 borrados
  1. 5 0
      src/thread/pthread_atfork.c

+ 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);