Parcourir la source

OpenBSD malloc.h believes that you should be able to detect headers with autoconf, or build without warnings, but not both. So never include malloc.h on OpenBSD. Backport candidate.

svn:r17891
Nick Mathewson il y a 18 ans
Parent
commit
743c6c8277
2 fichiers modifiés avec 7 ajouts et 0 suppressions
  1. 5 0
      src/common/util.c
  2. 2 0
      src/or/directory.c

+ 5 - 0
src/common/util.c

@@ -72,8 +72,13 @@
 #include <malloc/malloc.h>
 #include <malloc/malloc.h>
 #endif
 #endif
 #ifdef HAVE_MALLOC_H
 #ifdef HAVE_MALLOC_H
+#ifndef OPENBSD
+/* OpenBSD has a malloc.h, but for our purposes, it only exists in order to
+ * scold us for being so stupid as to autodetect its presence.  To be fair,
+ * they've done this since 1996, when autoconf was only 5 years old. */
 #include <malloc.h>
 #include <malloc.h>
 #endif
 #endif
+#endif
 #ifdef HAVE_MALLOC_NP_H
 #ifdef HAVE_MALLOC_NP_H
 #include <malloc_np.h>
 #include <malloc_np.h>
 #endif
 #endif

+ 2 - 0
src/or/directory.c

@@ -5,8 +5,10 @@
 
 
 #include "or.h"
 #include "or.h"
 #if defined(EXPORTMALLINFO) && defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO)
 #if defined(EXPORTMALLINFO) && defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO)
+#ifndef OPENBSD
 #include <malloc.h>
 #include <malloc.h>
 #endif
 #endif
+#endif
 
 
 /**
 /**
  * \file directory.c
  * \file directory.c