[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[or-cvs] [tor/release-0.2.2] Never include pthread.h when building for Windows.



commit 5c09431cc7c3843a26b2fcc8e52f56f3bba8abb6
Author: Nick Mathewson <nickm@xxxxxxxxxxxxxx>
Date:   Mon Jan 3 12:42:19 2011 -0500

    Never include pthread.h when building for Windows.
    
    On Windows, we never use pthreads, since it doesn't usually exist,
    and when it does it tends to be a little weirdly-behaved.  But some
    mingw installations have a pthreads installed, so autoconf detects
    pthread.h and tells us about it.  This would make us include
    pthread.h, which could make for trouble when the iffy pthread.h
    tried to include config.h.
    
    This patch changes compat.h so that we never include pthread.h on
    Windows.  Fixes bug 2313; bugfix on 0.1.0.1-rc.
---
 changes/bug2313     |    4 ++++
 src/common/compat.h |    2 +-
 2 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/changes/bug2313 b/changes/bug2313
new file mode 100644
index 0000000..0ffbe4a
--- /dev/null
+++ b/changes/bug2313
@@ -0,0 +1,4 @@
+  o Minor bugfixes
+    - Fix compilation on mingw when a pthreads compatibility library
+      has been installed.  (We don't want to use it, so we shouldn't
+      be including pthread.h.)  Fixes bug 2313; bugfix on 0.1.0.1-rc.
diff --git a/src/common/compat.h b/src/common/compat.h
index f1d869a..c7ed32b 100644
--- a/src/common/compat.h
+++ b/src/common/compat.h
@@ -31,7 +31,7 @@
 #ifdef HAVE_STRING_H
 #include <string.h>
 #endif
-#ifdef HAVE_PTHREAD_H
+#if defined(HAVE_PTHREAD_H) && !defined(MS_WINDOWS)
 #include <pthread.h>
 #endif
 #include <stdarg.h>