summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGareth Parker <gareth@brainnwave.com>2019-07-05 12:41:02 +0100
committerGareth Parker <gareth@brainnwave.com>2019-07-05 12:41:02 +0100
commitee723c050eed2587ca6689dc50ada8a52cf9beba (patch)
treeef592fbb867e72351024c80c9cfa4a1dd1e43b64
parentc7ae718e2d8e8c2d5af7e0ae4b8931ceb40a1d9f (diff)
downloadvdebug-ee723c050eed2587ca6689dc50ada8a52cf9beba.zip
Allow removing a breakpoint from an empty line
-rw-r--r--python3/vdebug/event.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/python3/vdebug/event.py b/python3/vdebug/event.py
index 7463f9a..975bf13 100644
--- a/python3/vdebug/event.py
+++ b/python3/vdebug/event.py
@@ -391,6 +391,19 @@ class SetEvalExpressionEvent(Event):
class SetBreakpointEvent(Event):
def run(self, args):
+ # Adding a special case to try a breakpoint on an empty line since the Breakpoint parser throws an error for
+ # that scenario
+ if not args:
+ line = self.ui.get_current_line()
+ if not line.strip():
+ file = self.ui.get_current_file()
+ row = self.ui.get_current_row()
+
+ id = self.session_handler.breakpoints().find_breakpoint(file, row)
+ if id is not None:
+ self.session_handler.breakpoints().remove_breakpoint_by_id(id)
+ return
+
bp = breakpoint.Breakpoint.parse(self.ui, args)
if bp.type == "line":
id = self.session_handler.breakpoints().find_breakpoint(