OSDN Git Service

make sure we store the function pointers to the real push/pop functions rather than...
authorMike Frysinger <vapier@gentoo.org>
Thu, 15 May 2008 02:03:13 +0000 (02:03 -0000)
committerMike Frysinger <vapier@gentoo.org>
Thu, 15 May 2008 02:03:13 +0000 (02:03 -0000)
this should fix the case where libpthread.so is not linked directly, but rather via another library:
 app -> links to libfoo.so -> links to libpthread.so

and any function (like readdir_r) that does:
 __UCLIBC_MUTEX_LOCK()
 __UCLIBC_MUTEX_UNLOCK()

libpthread/linuxthreads.old/pthread.c

index bdb64fd..65f63ce 100644 (file)
@@ -371,8 +371,8 @@ struct pthread_functions __pthread_functions =
     .ptr__pthread_cleanup_push = _pthread_cleanup_push,
     .ptr__pthread_cleanup_pop = _pthread_cleanup_pop
 */
-    .ptr__pthread_cleanup_push_defer = _pthread_cleanup_push_defer,
-    .ptr__pthread_cleanup_pop_restore = _pthread_cleanup_pop_restore,
+    .ptr__pthread_cleanup_push_defer = __pthread_cleanup_push_defer,
+    .ptr__pthread_cleanup_pop_restore = __pthread_cleanup_pop_restore,
   };
 #ifdef SHARED
 # define ptr_pthread_functions &__pthread_functions