changeset 33069:764a8eee1383

don't reset debug_frame if in dbstep mode (bug #65330) * pt-eval.cc (tree_evaluator::enter_debugger): Don't reset debug_frame if the evaluator is in dbstep mode.
author John W. Eaton <jwe@octave.org>
date Wed, 21 Feb 2024 20:05:24 -0500
parents 51fdc7b36abd
children e4ab79d5b849
files libinterp/parse-tree/pt-eval.cc
diffstat 1 files changed, 7 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/parse-tree/pt-eval.cc	Wed Feb 21 14:16:35 2024 -0800
+++ b/libinterp/parse-tree/pt-eval.cc	Wed Feb 21 20:05:24 2024 -0500
@@ -1417,7 +1417,13 @@
 
   // Go up to the nearest user code frame.
 
-  frame.protect_var (m_debug_frame);
+  tree_evaluator& tw = m_interpreter.get_evaluator ();
+
+  frame.add ([&tw, saved_frame = m_debug_frame] ()
+  {
+    if (! tw.dbstep_flag ())
+      tw.debug_frame (saved_frame);
+  });
 
   m_debug_frame = m_call_stack.dbupdown (0);