]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
make dmalloc 5.4.2 work again too
authorRoger Dingledine <arma@torproject.org>
Fri, 30 Nov 2007 19:02:56 +0000 (19:02 +0000)
committerRoger Dingledine <arma@torproject.org>
Fri, 30 Nov 2007 19:02:56 +0000 (19:02 +0000)
svn:r12615

configure.in
src/common/util.c

index a5aeb47439406520cca90a1c4936e98d75d46f5b..88bac18926eeb7d7553242408171033f2c76484b 100644 (file)
@@ -500,6 +500,7 @@ if [[ $dmalloc -eq 1 ]]; then
   AC_SEARCH_LIBS(dmalloc_malloc, [dmallocth dmalloc], , AC_MSG_ERROR(Libdmalloc library not found. If you enable it you better have it installed.))
   AC_DEFINE(USE_DMALLOC, 1, [Debug memory allocation library])
   AC_DEFINE(DMALLOC_FUNC_CHECK, 1, [Enable dmalloc's malloc function check])
+  AC_CHECK_FUNCS(dmalloc_strdup dmalloc_strndup)
 fi
 
 # Allow user to specify an alternate syslog facility
index 03670c503bcaeabce91223bbe517bce40fdf6067..ffbd0e6c0b4a57701dcd46971bd5e6437f18dbe7 100644 (file)
@@ -79,8 +79,17 @@ const char util_c_id[] = "$Id$";
  #undef strndup
  #include <dmalloc.h>
  #define DMALLOC_FN_ARGS , file, line
- #define dmalloc_strdup(file, line, string, xalloc_b) dmalloc_strndup(file, line, (string), -1, xalloc_b)
-#else
+
+ #if defined(HAVE_DMALLOC_STRDUP)
+ /* the dmalloc_strdup should be fine as defined */
+ #elif defined(HAVE_DMALLOC_STRNDUP)
+ #define dmalloc_strdup(file, line, string, xalloc_b) \
+         dmalloc_strndup(file, line, (string), -1, xalloc_b)
+ #else
+ #error "No dmalloc_strdup or equivalent"
+ #endif
+
+#else /* not using dmalloc */
  #define dmalloc_strdup(file, line, string, xalloc_b) strdup(string)
 
  #define dmalloc_malloc(file, line, size, func_id, alignment, xalloc_b) \