[Lldb-commits] [PATCH] D148548: [lldb] Improve breakpoint management for interactive scripted process

Alex Langford via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Apr 17 14:12:14 PDT 2023


bulbazord added a comment.

Seems okay to me, but it's a little messy that we're having to manage breakpoints like this.



================
Comment at: lldb/bindings/interface/SBTargetExtensions.i:144-171
+        class watchpoints_access(object):
+            '''A helper object that will lazily hand out watchpoints for a target when supplied an index.'''
+            def __init__(self, sbtarget):
+                self.sbtarget = sbtarget
+
+            def __len__(self):
+                if self.sbtarget:
----------------
Are these used at all?


================
Comment at: lldb/test/API/functionalities/interactive_scripted_process/interactive_scripted_process.py:269-278
+                bkpt_file = lldb.SBFileSpec(tf.name)
+                error = self.driving_target.BreakpointsWriteToFile(bkpt_file)
+                if error.Fail():
+                    log("Failed to save breakpoints from driving target (%s)"
+                        % error.GetCString())
+                bkpts_list = lldb.SBBreakpointList(self.target)
+                error = self.target.BreakpointsCreateFromFile(bkpt_file, bkpts_list)
----------------
It's interesting that we dump to a file. It'd be cool if we could dump it to a StructuredData or something instead of a file.


================
Comment at: lldb/test/API/functionalities/interactive_scripted_process/interactive_scripted_process.py:282
+            if error.Success():
+                self.driving_target.DeleteAllBreakpoints()
+                for bkpt in self.target.breakpoints:
----------------
Why do we delete all of the breakpoints just to re-set them afterwards? Is there a difference between what we set and what was there before?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D148548/new/

https://reviews.llvm.org/D148548



More information about the lldb-commits mailing list