ref: 2a20c92c4bd022923885252ec9264642533ba809
parent: 8539915d1873169cc419cc5931dac8dbe6e6d04c
author: Werner Lemberg <[email protected]>
date: Wed Oct 14 11:23:15 EDT 2015
[base] Use `FT_' namespace for MD5 functions (#42366). * src/base/ftobjs.c (MD5_*): Define as `FT_MD5_*'. Undefine HAVE_OPENSSL.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2015-10-14 Werner Lemberg <[email protected]>
+
+ [base] Use `FT_' namespace for MD5 functions (#42366).
+
+ * src/base/ftobjs.c (MD5_*): Define as `FT_MD5_*'.
+ Undefine HAVE_OPENSSL.
+
2015-10-13 Werner Lemberg <[email protected]>
[type1] Correctly handle missing MM axis names (#46202).
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -55,7 +55,18 @@
#pragma warning( disable : 4244 )
#endif /* _MSC_VER */
- /* it's easiest to include `md5.c' directly */
+ /* It's easiest to include `md5.c' directly. However, since OpenSSL */
+ /* also provides the same functions, there might be conflicts if */
+ /* both FreeType and OpenSSL are built as static libraries. For */
+ /* this reason, we put the MD5 stuff into the `FT_' namespace. */
+#define MD5_u32plus FT_MD5_u32plus
+#define MD5_CTX FT_MD5_CTX
+#define MD5_Init FT_MD5_Init
+#define MD5_Update FT_MD5_Update
+#define MD5_Final FT_MD5_Final
+
+#undef HAVE_OPENSSL
+
#include "md5.c"
#if defined( _MSC_VER )