From: Bernd Edlinger Date: Wed, 14 Jun 2017 08:16:15 +0000 (+0200) Subject: Remove the fallback from ERR_get_state because the X-Git-Tag: OpenSSL_1_0_2m~74 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=7ff7f5e9b826325c851869846ffb0ce58fdba15f;p=oweals%2Fopenssl.git Remove the fallback from ERR_get_state because the return value is now checked at the callers. Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/3678) --- diff --git a/crypto/err/err.c b/crypto/err/err.c index 32fe8f320e..03d407cab8 100644 --- a/crypto/err/err.c +++ b/crypto/err/err.c @@ -1022,7 +1022,6 @@ void ERR_remove_state(unsigned long pid) ERR_STATE *ERR_get_state(void) { - static ERR_STATE fallback; ERR_STATE *ret, tmp, *tmpp = NULL; int i; CRYPTO_THREADID tid; @@ -1036,7 +1035,7 @@ ERR_STATE *ERR_get_state(void) if (ret == NULL) { ret = (ERR_STATE *)OPENSSL_malloc(sizeof(ERR_STATE)); if (ret == NULL) - return (&fallback); + return NULL; CRYPTO_THREADID_cpy(&ret->tid, &tid); ret->top = 0; ret->bottom = 0; @@ -1048,7 +1047,7 @@ ERR_STATE *ERR_get_state(void) /* To check if insertion failed, do a get. */ if (ERRFN(thread_get_item) (ret) != ret) { ERR_STATE_free(ret); /* could not insert it */ - return (&fallback); + return NULL; } /* * If a race occured in this function and we came second, tmpp is the