aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/arm-linux-tdep.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index c32722e..5b743c4 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2016-02-16 Yao Qi <yao.qi@linaro.org>
+ * arm-linux-tdep.c (arm_linux_software_single_step): Assign
+ 'old_chain' later.
+
+2016-02-16 Yao Qi <yao.qi@linaro.org>
+
* arch/arm-get-next-pcs.h (struct arm_get_next_pcs_ops)
<syscall_next_pc>: Remove argument PC. Callers updated.
* arm-linux-tdep.c (arm_linux_get_next_pcs_syscall_next_pc):
diff --git a/gdb/arm-linux-tdep.c b/gdb/arm-linux-tdep.c
index 46d54bc..79964bb 100644
--- a/gdb/arm-linux-tdep.c
+++ b/gdb/arm-linux-tdep.c
@@ -933,13 +933,15 @@ arm_linux_software_single_step (struct frame_info *frame)
CORE_ADDR pc;
int i;
VEC (CORE_ADDR) *next_pcs = NULL;
- struct cleanup *old_chain = make_cleanup (VEC_cleanup (CORE_ADDR), &next_pcs);
+ struct cleanup *old_chain;
/* If the target does have hardware single step, GDB doesn't have
to bother software single step. */
if (target_can_do_single_step () == 1)
return 0;
+ old_chain = make_cleanup (VEC_cleanup (CORE_ADDR), &next_pcs);
+
arm_get_next_pcs_ctor (&next_pcs_ctx,
&arm_linux_get_next_pcs_ops,
gdbarch_byte_order (gdbarch),