Fix strdup macro redefinition
authorMat <mberchtold@gmail.com>
Fri, 27 May 2016 17:35:12 +0000 (19:35 +0200)
committerRich Salz <rsalz@openssl.org>
Mon, 30 May 2016 13:51:31 +0000 (09:51 -0400)
This fixes the following error when the CRT debug heap (crtdbg.h) is used:
e_os.h(476): warning C4005: 'strdup': macro redefinition
C:\Program Files (x86)\Windows Kits\10\Include\10.0.10586.0\ucrt\crtdbg.h(319): note: see previous definition of 'strdup'
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1137)

e_os.h

diff --git a/e_os.h b/e_os.h
index 700d7d05ce4a303847ee6f3c05aac734b7d8e7fa..4951335635866dfd5849c1ca9991db6492b8baa1 100644 (file)
--- a/e_os.h
+++ b/e_os.h
@@ -473,7 +473,9 @@ struct servent *PASCAL getservbyname(const char *, const char *);
 #   define open _open
 #   define fdopen _fdopen
 #   define close _close
-#   define strdup _strdup
+#   ifndef strdup
+#    define strdup _strdup
+#   endif
 #   define unlink _unlink
 #  endif
 # else