From f8ae544e6eca57177e471a08d076558e46060084 Mon Sep 17 00:00:00 2001 From: Roman Perepelitsa Date: Sun, 15 Nov 2020 09:41:55 +0100 Subject: [PATCH] properly restore prompt after SIGINT when transient prompt is disabled --- internal/p10k.zsh | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/internal/p10k.zsh b/internal/p10k.zsh index d91519e3..78b3b3fb 100644 --- a/internal/p10k.zsh +++ b/internal/p10k.zsh @@ -7388,14 +7388,15 @@ function _p9k_on_widget_zle-line-finish() { fi fi - if (( __p9k_reset_state == 2 )); then - if [[ $1 == int ]]; then - _p9k__must_restore_prompt=1 - if (( !_p9k__restore_prompt_fd )); then - sysopen -o cloexec -ru _p9k__restore_prompt_fd /dev/null - zle -F $_p9k__restore_prompt_fd _p9k_restore_prompt - fi + if [[ $1 == int ]]; then + _p9k__must_restore_prompt=1 + if (( !_p9k__restore_prompt_fd )); then + sysopen -o cloexec -ru _p9k__restore_prompt_fd /dev/null + zle -F $_p9k__restore_prompt_fd _p9k_restore_prompt fi + fi + + if (( __p9k_reset_state == 2 )); then if (( optimized )); then RPROMPT= PROMPT=$_p9k_transient_prompt _p9k_reset_prompt else