aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog10
-rw-r--r--gdb/record.c6
-rw-r--r--gdb/target.c3
3 files changed, 19 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 95d0bff..1abc0df 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,13 @@
+2010-03-08 Jan Kratochvil <jan.kratochvil@redhat.com>
+ Hui Zhu <teawater@gmail.com>
+
+ * record.c (record_open_1): Check tmp_to_stopped_by_watchpoint and
+ tmp_to_stopped_data_address.
+ (record_open): Reset tmp_to_stopped_by_watchpoint and
+ tmp_to_stopped_data_address.
+ * target.c (init_dummy_target): Add to_stopped_by_watchpoint and
+ to_stopped_data_address.
+
2010-03-08 Hui Zhu <teawater@gmail.com>
* i386-tdep.c (i386_process_record): Initialize regnum.
diff --git a/gdb/record.c b/gdb/record.c
index 9d24f01..fa6cfbb 100644
--- a/gdb/record.c
+++ b/gdb/record.c
@@ -867,6 +867,10 @@ record_open_1 (char *name, int from_tty)
error (_("Could not find 'to_insert_breakpoint' method on the target stack."));
if (!tmp_to_remove_breakpoint)
error (_("Could not find 'to_remove_breakpoint' method on the target stack."));
+ if (!tmp_to_stopped_by_watchpoint)
+ error (_("Could not find 'to_stopped_by_watchpoint' method on the target stack."));
+ if (!tmp_to_stopped_data_address)
+ error (_("Could not find 'to_stopped_data_address' method on the target stack."));
push_target (&record_ops);
}
@@ -897,6 +901,8 @@ record_open (char *name, int from_tty)
tmp_to_xfer_partial = NULL;
tmp_to_insert_breakpoint = NULL;
tmp_to_remove_breakpoint = NULL;
+ tmp_to_stopped_by_watchpoint = NULL;
+ tmp_to_stopped_data_address = NULL;
/* Set the beneath function pointers. */
for (t = current_target.beneath; t != NULL; t = t->beneath)
diff --git a/gdb/target.c b/gdb/target.c
index 1f90171..5f7a2e7 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -2838,6 +2838,9 @@ init_dummy_target (void)
dummy_target.to_has_stack = (int (*) (struct target_ops *)) return_zero;
dummy_target.to_has_registers = (int (*) (struct target_ops *)) return_zero;
dummy_target.to_has_execution = (int (*) (struct target_ops *)) return_zero;
+ dummy_target.to_stopped_by_watchpoint = return_zero;
+ dummy_target.to_stopped_data_address =
+ (int (*) (struct target_ops *, CORE_ADDR *)) return_zero;
dummy_target.to_magic = OPS_MAGIC;
}