aboutsummaryrefslogtreecommitdiffstats
path: root/main/uclibc/uclibc-linuxthreads-init-stdio.patch
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2010-04-13 07:04:14 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2010-04-14 12:20:36 +0000
commitdaf17465a418f319f39f5f20291d50c976a2626c (patch)
treeaf098b08453dd374baac16a86b486508dab2eaf7 /main/uclibc/uclibc-linuxthreads-init-stdio.patch
parent58914bedccc5bce143471b21e909e85bd355bdb7 (diff)
downloadaports-daf17465a418f319f39f5f20291d50c976a2626c.tar.bz2
aports-daf17465a418f319f39f5f20291d50c976a2626c.tar.xz
main/uclibc: linuxthreads stdio initialization
(cherry picked from commit 4fb971ce31073d9b670ab9243295290aecc38501)
Diffstat (limited to 'main/uclibc/uclibc-linuxthreads-init-stdio.patch')
-rw-r--r--main/uclibc/uclibc-linuxthreads-init-stdio.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/main/uclibc/uclibc-linuxthreads-init-stdio.patch b/main/uclibc/uclibc-linuxthreads-init-stdio.patch
new file mode 100644
index 0000000000..aa5ef64600
--- /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;
++ }
++ }
++ }
+ }
+
+