summaryrefslogtreecommitdiffstats
path: root/crypto/cryptlib.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/cryptlib.c')
-rw-r--r--crypto/cryptlib.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/crypto/cryptlib.c b/crypto/cryptlib.c
index ad727edf6a..a7894ddac3 100644
--- a/crypto/cryptlib.c
+++ b/crypto/cryptlib.c
@@ -205,10 +205,14 @@ int OPENSSL_isservice(void)
if (_OPENSSL_isservice.p == NULL) {
HANDLE mod = GetModuleHandle(NULL);
+ FARPROC f;
+
if (mod != NULL)
- _OPENSSL_isservice.f = GetProcAddress(mod, "_OPENSSL_isservice");
- if (_OPENSSL_isservice.p == NULL)
+ f = GetProcAddress(mod, "_OPENSSL_isservice");
+ if (f == NULL)
_OPENSSL_isservice.p = (void *)-1;
+ else
+ _OPENSSL_isservice.f = f;
}
if (_OPENSSL_isservice.p != (void *)-1)