From 4de06d21e0eb9bd27f090a3863270833d3e64261 Mon Sep 17 00:00:00 2001
From: Frederick Zhang <frederick888@tsundere.moe>
Date: Mon, 2 Mar 2020 18:21:33 +1100
Subject: [PATCH] preserve exit code

---
 plugins/do_sudo/do_sudo.plugin.zsh | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/plugins/do_sudo/do_sudo.plugin.zsh b/plugins/do_sudo/do_sudo.plugin.zsh
index 8d1770e94..f0bf8440f 100644
--- a/plugins/do_sudo/do_sudo.plugin.zsh
+++ b/plugins/do_sudo/do_sudo.plugin.zsh
@@ -10,6 +10,7 @@ function _do_sudo() {
     local -a args
     local -a cmd_alias_arr
     local cmd_alias
+    local return_value
     while (($#)); do
         case "$1" in
         command|exec|-) shift; break ;;
@@ -43,8 +44,10 @@ function _do_sudo() {
         else
             PATH="/sbin:/usr/sbin:/usr/local/sbin:$PATH" command sudo "${args[@]}" $==*
         fi
+        return_value=$?
         unset __do_sudo_glob
         unset __do_sudo_expanded
+        return $return_value
     fi
 }