From 4fb971ce31073d9b670ab9243295290aecc38501 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Tue, 13 Apr 2010 07:04:14 +0000 Subject: main/uclibc: linuxthreads stdio initialization --- main/uclibc/uclibc-linuxthreads-init-stdio.patch | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 main/uclibc/uclibc-linuxthreads-init-stdio.patch (limited to 'main/uclibc/uclibc-linuxthreads-init-stdio.patch') diff --git a/main/uclibc/uclibc-linuxthreads-init-stdio.patch b/main/uclibc/uclibc-linuxthreads-init-stdio.patch new file mode 100644 index 000000000..aa5ef6460 --- /dev/null +++ b/main/uclibc/uclibc-linuxthreads-init-stdio.patch @@ -0,0 +1,21 @@ +diff --git a/libpthread/linuxthreads/pthread.c b/libpthread/linuxthreads/pthread.c +index 6ae9a10..151e039 100644 +--- a/libpthread/linuxthreads/pthread.c ++++ b/libpthread/linuxthreads/pthread.c +@@ -409,6 +409,16 @@ cannot allocate TLS data structures for initial thread\n"; + #endif + + __libc_multiple_threads_ptr = __libc_pthread_init (ptr_pthread_functions); ++ /* uClibc-specific stdio initialization for threads. */ ++ { ++ FILE *fp; ++ _stdio_user_locking = 0; /* 2 if threading not initialized */ ++ for (fp = _stdio_openlist; fp != NULL; fp = fp->__nextopen) { ++ if (fp->__user_locking != 1) { ++ fp->__user_locking = 0; ++ } ++ } ++ } + } + + -- cgit v1.2.3