crosstool-ng/patches/ltrace/0.7.3/006-unexpected-breakpoint.patch

23 lines
731 B
Diff
Raw Normal View History

From: Juan Cespedes <cespedes@debian.org>
Description: continue after unexpected breakpoint
(instead of decrementing PC and execute int3 again and again)
Last-Update: 2014-01-03
--- ltrace-0.7.3.orig/handle_event.c
+++ ltrace-0.7.3/handle_event.c
@@ -656,9 +656,12 @@ handle_breakpoint(Event *event)
if ((sbp = address2bpstruct(leader, brk_addr)) != NULL)
breakpoint_on_hit(sbp, event->proc);
- else if (event->proc->state != STATE_IGNORED)
+ else if (event->proc->state != STATE_IGNORED) {
output_line(event->proc,
"unexpected breakpoint at %p", brk_addr);
+ continue_process(event->proc->pid);
+ return;
+ }
/* breakpoint_on_hit may delete its own breakpoint, so we have
* to look it up again. */