diff options
author | Tomas Mraz <tomas@openssl.org> | 2021-12-28 13:32:57 +0100 |
---|---|---|
committer | Tomas Mraz <tomas@openssl.org> | 2022-01-03 10:57:39 +0100 |
commit | 5bea0e2ee9bda4d9be6e88c79f2c1b411bb65351 (patch) | |
tree | 222cf1899605e4ff4e50344e9857af8d871b1aca /crypto | |
parent | da7db7ae6d7d1929893a58e41335c88e472fc364 (diff) |
close_console: Always unlock as the lock is always held
Fixes #17364
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17365)
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/ui/ui_openssl.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/crypto/ui/ui_openssl.c b/crypto/ui/ui_openssl.c index 8cf7a21d76..37b98910c7 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) |