]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Use exec_and_log in next.py
authorTom Tromey <tromey@adacore.com>
Wed, 3 Sep 2025 17:26:28 +0000 (11:26 -0600)
committerTom Tromey <tromey@adacore.com>
Fri, 26 Sep 2025 15:29:14 +0000 (09:29 -0600)
Some code in next.py avoids exec_and_log due to its exception
behavior.  Now that exec_and_log always forwards exceptions, this is
easily fixed.

gdb/python/lib/gdb/dap/next.py

index a0fa18eae1d1f01d5d1fcdd1cec588d3d892a37e..993e9d280970d361393a9e1880d306ee09641cfe 100644 (file)
@@ -17,7 +17,7 @@ import gdb
 
 from .events import exec_and_expect_stop
 from .server import capability, request
-from .startup import in_gdb_thread
+from .startup import DAPException, exec_and_log, in_gdb_thread
 from .state import set_thread
 
 
@@ -36,11 +36,9 @@ def _handle_thread_step(thread_id, single_thread, select=False):
         result = False
         arg = "off"
     try:
-        # This can fail, depending on the target, so catch the error
-        # and report to our caller.  We can't use exec_and_log because
-        # that does not propagate exceptions.
-        gdb.execute("set scheduler-locking " + arg, from_tty=True, to_string=True)
-    except gdb.error:
+        # This can fail, depending on the target, so catch any error.
+        exec_and_log("set scheduler-locking " + arg)
+    except DAPException:
         result = False
     # Other DAP code may select a frame, and the "finish" command uses
     # the selected frame.