diff --git a/src/structs.h b/src/structs.h
index 19dc550..31889f6 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -2126,6 +2126,7 @@
 				    // out_loop_stack
 	short	 var_count;	    // number of variables defined in a loop
     } out_loop[MAX_LOOP_DEPTH];
+    int		out_loop_size;	    // nr of used entries in out_loop[]
 };
 
 struct partial_S
diff --git a/src/version.c b/src/version.c
index 4641a1f..2f36c39 100644
--- a/src/version.c
+++ b/src/version.c
@@ -700,6 +700,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    547,
+/**/
     546,
 /**/
     545,
diff --git a/src/vim9execute.c b/src/vim9execute.c
index 51c5420..9416cf3 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -1868,7 +1868,10 @@
 		pt->pt_outer.out_loop[depth].var_count =
 					    lvi->lvi_loop[depth].var_count;
 	    }
+	    pt->pt_outer.out_loop_size = lvi->lvi_depth;
 	}
+	else
+	    pt->pt_outer.out_loop_size = 0;
 
 	// If the function currently executing returns and the closure is still
 	// being referenced, we need to make a copy of the context (arguments
@@ -5739,14 +5742,10 @@
 	    if (partial != NULL)
 	    {
 		outer_T *outer = get_pt_outer(partial);
-		int	depth;
-		void	*ptr = outer->out_stack;
 
-		// see if any stack was set
-		for (depth = 0; ptr == NULL && depth < MAX_LOOP_DEPTH; ++depth)
-		    ptr = outer->out_loop[depth].stack;
-		if (ptr == NULL)
+		if (outer->out_stack == NULL && outer->out_loop_size == 0)
 		{
+		    // no stack was set
 		    if (current_ectx != NULL)
 		    {
 			if (current_ectx->ec_outer_ref != NULL
