fix: use correct return code in zinit-confirm

Signed-off-by: Vladislav Doster <mvdoster@gmail.com>
This commit is contained in:
Vladislav Doster 2023-02-12 18:59:55 -06:00
parent a679bc60f0
commit d467738c1b
2 changed files with 6 additions and 7 deletions

View file

@ -391,7 +391,7 @@ ____
$2 - expression
____
Has 18 line(s). Calls functions:
Has 17 line(s). Calls functions:
.zinit-confirm
`-- zinit.zsh/+zinit-message

View file

@ -2829,18 +2829,17 @@ builtin print -Pr \"\$ZINIT[col-obj]Done (with the exit code: \$_retval).%f%b\""
# $1 - question
# $2 - expression
.zinit-confirm() {
integer retval
if (( OPTS[opt_-y,--yes] )); then
integer retval
builtin eval "${2}"; retval=$?
(( OPTS[opt_-q,--quiet] )) || +zinit-message -lrP "{log-msg} Action executed (exit code: {num}${?}{rst})"
(( OPTS[opt_-q,--quiet] )) || +zinit-message -lrP "{log-msg} Action executed (exit code: {num}${retval}{rst})"
else
local choice prompt
builtin print -D -v prompt "$(+zinit-message '{log-info} Press [{opt}Y{rst}/{opt}y{rst}] to continue: ')"
builtin print -D -v prompt "$(+zinit-message '{log-info} Press [{opt}Y{rst}/{opt}y{rst}] to continue: {nl}')"
+zinit-message "${1}"
if builtin read -qs "choice?${prompt}"; then
builtin print
builtin eval "${2}"
+zinit-message "{log-msg} Action executed (exit code: {num}${?}{rst})"
builtin eval "${2}"; retval=$?
+zinit-message "{log-msg} Action executed (exit code: {num}${retval}{rst})"
return 0
else
+zinit-message "{log-msg} No action executed ('{opt}${choice}{rst}' not 'Y' or 'y')"