From: Tomas Mraz Date: Tue, 28 Dec 2021 12:32:57 +0000 (+0100) Subject: close_console: Always unlock as the lock is always held X-Git-Tag: openssl-3.2.0-alpha1~3153 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5bea0e2ee9bda4d9be6e88c79f2c1b411bb65351;p=thirdparty%2Fopenssl.git close_console: Always unlock as the lock is always held Fixes #17364 Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/17365) --- diff --git a/crypto/ui/ui_openssl.c b/crypto/ui/ui_openssl.c index 8cf7a21d767..37b98910c7c 100644 --- a/crypto/ui/ui_openssl.c +++ b/crypto/ui/ui_openssl.c @@ -551,6 +551,8 @@ static int echo_console(UI *ui) static int close_console(UI *ui) { + int ret = 1; + if (tty_in != stdin) fclose(tty_in); if (tty_out != stderr) @@ -560,12 +562,12 @@ static int close_console(UI *ui) if (status != SS$_NORMAL) { ERR_raise_data(ERR_LIB_UI, UI_R_SYSDASSGN_ERROR, "status=%%X%08X", status); - return 0; + ret = 0; } # endif CRYPTO_THREAD_unlock(ui->lock); - return 1; + return ret; } # if !defined(OPENSSL_SYS_WINCE)