| Index: third_party/libxml/src/threads.c
|
| diff --git a/third_party/libxml/src/threads.c b/third_party/libxml/src/threads.c
|
| index 8921204b3c2eef6ac917297c564664dfe13731ad..b9d6cae35333830e3ea72f766c5e2838ee43dac5 100644
|
| --- a/third_party/libxml/src/threads.c
|
| +++ b/third_party/libxml/src/threads.c
|
| @@ -47,7 +47,7 @@
|
| #ifdef HAVE_PTHREAD_H
|
|
|
| static int libxml_is_threaded = -1;
|
| -#ifdef __GNUC__
|
| +#if defined(__GNUC__) && defined(__GLIBC__)
|
| #ifdef linux
|
| #if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || (__GNUC__ > 3)
|
| extern int pthread_once (pthread_once_t *__once_control,
|
| @@ -89,7 +89,7 @@ extern int pthread_cond_signal ()
|
| __attribute((weak));
|
| #endif
|
| #endif /* linux */
|
| -#endif /* __GNUC__ */
|
| +#endif /* defined(__GNUC__) && defined(__GLIBC__) */
|
| #endif /* HAVE_PTHREAD_H */
|
|
|
| /*
|
| @@ -415,8 +415,8 @@ xmlRMutexUnlock(xmlRMutexPtr tok ATTRIBUTE_UNUSED)
|
| pthread_mutex_unlock(&tok->lock);
|
| #elif defined HAVE_WIN32_THREADS
|
| if (tok->count > 0) {
|
| - LeaveCriticalSection(&tok->cs);
|
| tok->count--;
|
| + LeaveCriticalSection(&tok->cs);
|
| }
|
| #elif defined HAVE_BEOS_THREADS
|
| if (tok->lock->tid == find_thread(NULL)) {
|
|
|