diff --git a/src/testdir/test_user_func.vim b/src/testdir/test_user_func.vim
index 82b5f91..8fc82c4 100644
--- a/src/testdir/test_user_func.vim
+++ b/src/testdir/test_user_func.vim
@@ -870,5 +870,31 @@
   call v9.CheckScriptFailure(lines, 'E1013: Argument 1: type mismatch, expected string but got number')
 endfunc
 
+" Test for calling a deferred function after an exception
+func Test_defer_after_exception()
+  let g:callTrace = []
+  func Defer()
+    let g:callTrace += ['a']
+    let g:callTrace += ['b']
+    let g:callTrace += ['c']
+    let g:callTrace += ['d']
+  endfunc
+
+  func Foo()
+    defer Defer()
+    throw "TestException"
+  endfunc
+
+  try
+    call Foo()
+  catch /TestException/
+    let g:callTrace += ['e']
+  endtry
+  call assert_equal(['a', 'b', 'c', 'd', 'e'], g:callTrace)
+
+  delfunc Defer
+  delfunc Foo
+  unlet g:callTrace
+endfunc
 
 " vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim
index a16c5ae..f8280c6 100644
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -4686,6 +4686,35 @@
   v9.CheckScriptSuccess(lines)
 enddef
 
+" Test for calling a deferred function after an exception
+def Test_defer_after_exception()
+  var lines =<< trim END
+    vim9script
+
+    var callTrace: list<string> = []
+    def Defer()
+      callTrace += ['a']
+      callTrace += ['b']
+      callTrace += ['c']
+      callTrace += ['d']
+    enddef
+
+    def Foo()
+      defer Defer()
+      throw "TestException"
+    enddef
+
+    try
+      Foo()
+    catch /TestException/
+      callTrace += ['e']
+    endtry
+
+    assert_equal(['a', 'b', 'c', 'd', 'e'], callTrace)
+  END
+  v9.CheckScriptSuccess(lines)
+enddef
+
 " Keep this last, it messes up highlighting.
 def Test_substitute_cmd()
   new
diff --git a/src/userfunc.c b/src/userfunc.c
index a3b8bdc..092b392 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -6251,8 +6251,23 @@
 	char_u *name = dr->dr_name;
 	dr->dr_name = NULL;
 
+	// If the deferred function is called after an exception, then only the
+	// first statement in the function will be executed.  Save and restore
+	// the try/catch/throw exception state.
+	int save_trylevel = trylevel;
+	int save_did_throw = did_throw;
+	int save_need_rethrow = need_rethrow;
+
+	trylevel = 0;
+	did_throw = FALSE;
+	need_rethrow = FALSE;
+
 	call_func(name, -1, &rettv, dr->dr_argcount, dr->dr_argvars, &funcexe);
 
+	trylevel = save_trylevel;
+	did_throw = save_did_throw;
+	need_rethrow = save_need_rethrow;
+
 	clear_tv(&rettv);
 	vim_free(name);
 	for (int i = dr->dr_argcount - 1; i >= 0; --i)
diff --git a/src/version.c b/src/version.c
index bad07e6..6a82082 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2044,
+/**/
     2043,
 /**/
     2042,
diff --git a/src/vim9execute.c b/src/vim9execute.c
index 1fdff84..dd3d263 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -1140,8 +1140,23 @@
 	char_u *name = functv->vval.v_string;
 	functv->vval.v_string = NULL;
 
+	// If the deferred function is called after an exception, then only the
+	// first statement in the function will be executed.  Save and restore
+	// the try/catch/throw exception state.
+	int save_trylevel = trylevel;
+	int save_did_throw = did_throw;
+	int save_need_rethrow = need_rethrow;
+
+	trylevel = 0;
+	did_throw = FALSE;
+	need_rethrow = FALSE;
+
 	(void)call_func(name, -1, &rettv, argcount, argvars, &funcexe);
 
+	trylevel = save_trylevel;
+	did_throw = save_did_throw;
+	need_rethrow = save_need_rethrow;
+
 	clear_tv(&rettv);
 	vim_free(name);
     }
