Use SUDO_COMMAND to check for sudo

`sudo -n true` only checks that we _could_ use `sudo`, not if we are in
a sudo session.

closes #852
pull/22/head
Christian Höltje 6 years ago
parent 22a761208d
commit 7f6ac8dbac

@ -623,12 +623,12 @@ prompt_context() {
if [[ $(print -P "%#") == '#' ]]; then if [[ $(print -P "%#") == '#' ]]; then
current_state="ROOT" current_state="ROOT"
elif [[ -n "$SSH_CLIENT" || -n "$SSH_TTY" ]]; then elif [[ -n "$SSH_CLIENT" || -n "$SSH_TTY" ]]; then
if sudo -n true 2>/dev/null; then if [[ -n "$SUDO_COMMAND" ]]; then
current_state="REMOTE_SUDO" current_state="REMOTE_SUDO"
else else
current_state="REMOTE" current_state="REMOTE"
fi fi
elif sudo -n true 2>/dev/null; then elif [[ -n "$SUDO_COMMAND" ]]; then
current_state="SUDO" current_state="SUDO"
fi fi

Loading…
Cancel
Save