summaryrefslogtreecommitdiff
path: root/crypto/comp/c_zlib.c
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2005-02-25 16:58:19 +0000
committerRichard Levitte <levitte@openssl.org>2005-02-25 16:58:19 +0000
commit0e785e5e093d4c24eaf531dd5ffc655e3a91c6b5 (patch)
tree7c0a37f818c204f2eea0df4f5840f8a6a00c96d2 /crypto/comp/c_zlib.c
parentafcff52ef7256809a89a48347c7185644f56bb25 (diff)
downloadopenssl-new-0e785e5e093d4c24eaf531dd5ffc655e3a91c6b5.tar.gz
Many changes from 0.9.8-dev.
Diffstat (limited to 'crypto/comp/c_zlib.c')
-rw-r--r--crypto/comp/c_zlib.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/crypto/comp/c_zlib.c b/crypto/comp/c_zlib.c
index 7553a2d107..171fa5b86b 100644
--- a/crypto/comp/c_zlib.c
+++ b/crypto/comp/c_zlib.c
@@ -3,6 +3,7 @@
#include <string.h>
#include <openssl/objects.h>
#include <openssl/comp.h>
+#include <openssl/err.h>
COMP_METHOD *COMP_zlib(void );
@@ -357,7 +358,17 @@ COMP_METHOD *COMP_zlib(void)
if (!zlib_loaded)
{
#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_WIN32)
- zlib_dso = DSO_load(NULL, "ZLIB", NULL, 0);
+ zlib_dso = DSO_load(NULL, "ZLIB1", NULL, 0);
+ if (!zlib_dso)
+ {
+ zlib_dso = DSO_load(NULL, "ZLIB", NULL, 0);
+ if (zlib_dso)
+ {
+ /* Clear the errors from the first failed
+ DSO_load() */
+ ERR_clear_error();
+ }
+ }
#else
zlib_dso = DSO_load(NULL, "z", NULL, 0);
#endif