Skip to content
This repository was archived by the owner on Aug 28, 2020. It is now read-only.

Commit d6b44d6

Browse files
committed
after the init breakpoints are set, run the debugger if it should not break at first line
1 parent 2167dfc commit d6b44d6

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed

pugdebug/debugger.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ class PugdebugDebugger(QObject):
3333
step_command_signal = pyqtSignal()
3434
got_all_variables_signal = pyqtSignal(object)
3535
got_stacktraces_signal = pyqtSignal(object)
36+
init_breakpoints_set = pyqtSignal()
3637
breakpoint_removed_signal = pyqtSignal(int)
3738
breakpoints_listed_signal = pyqtSignal(list)
3839
expression_evaluated_signal = pyqtSignal(int, dict)
@@ -98,7 +99,7 @@ def connect_connection_signals(self, connection):
9899

99100
# Breakpoints signals
100101
connection.set_init_breakpoints_signal.connect(
101-
self.handle_set_breakpoint
102+
self.handle_set_init_breakpoint
102103
)
103104
connection.set_breakpoint_signal.connect(
104105
self.handle_set_breakpoint
@@ -269,6 +270,11 @@ def handle_set_breakpoint(self, successful):
269270
if successful:
270271
self.list_breakpoints()
271272

273+
def handle_set_init_breakpoint(self, successful):
274+
if successful:
275+
self.list_breakpoints()
276+
self.init_breakpoints_set.emit()
277+
272278
def remove_breakpoint(self, breakpoint_id):
273279
self.current_connection.remove_breakpoint(breakpoint_id)
274280

pugdebug/pugdebug.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,9 @@ def connect_debugger_signals(self):
168168
)
169169

170170
# Breakpoints signals
171+
self.debugger.init_breakpoints_set.connect(
172+
self.handle_init_breakpoints_set
173+
)
171174
self.debugger.breakpoint_removed_signal.connect(
172175
self.handle_breakpoint_removed
173176
)
@@ -587,6 +590,15 @@ def remove_stale_breakpoints(self, path):
587590

588591
self.breakpoint_viewer.set_breakpoints(breakpoints)
589592

593+
def handle_init_breakpoints_set(self):
594+
"""Handle when init breakpoints get set
595+
596+
If the code should not break at first line, run the debugger.
597+
"""
598+
break_at_first_line = int(get_setting('debugger/break_at_first_line'))
599+
if break_at_first_line == 0:
600+
self.run_debug()
601+
590602
def handle_breakpoint_removed(self, breakpoint_id):
591603
"""Handle when a breakpoint gets removed
592604

0 commit comments

Comments
 (0)