aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorYao Qi <yao@codesourcery.com>2011-06-23 15:08:01 +0000
committerYao Qi <yao@codesourcery.com>2011-06-23 15:08:01 +0000
commit6e586cc56592f85535f788391b4f48025311b465 (patch)
tree4c2095a48562733d810a5d8ee321166b9796c33b /gdb
parentab5c6a729c416841aeda2398f77d881aef09208f (diff)
downloadgdb-6e586cc56592f85535f788391b4f48025311b465.zip
gdb-6e586cc56592f85535f788391b4f48025311b465.tar.gz
gdb-6e586cc56592f85535f788391b4f48025311b465.tar.bz2
2011-06-23 Yao Qi <yao@codesourcery.com>
* infrun.c (start_remote): Move call init_wait_for_inferior to ... * remote.c (remote_start_remote): ... here. * monitor.c (monitor_open): ... here.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/infrun.c1
-rw-r--r--gdb/monitor.c2
-rw-r--r--gdb/remote.c11
4 files changed, 19 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b2ff7ff..e17e370 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2011-06-23 Yao Qi <yao@codesourcery.com>
+
+ * infrun.c (start_remote): Move call init_wait_for_inferior to ...
+ * remote.c (remote_start_remote): ... here.
+ * monitor.c (monitor_open): ... here.
+
2011-06-23 Andrew Burgess <aburgess@broadcom.com>
* gdbtypes.c (append_composite_type_field_aligned): Fix
diff --git a/gdb/infrun.c b/gdb/infrun.c
index 8616f99..a656cbf 100644
--- a/gdb/infrun.c
+++ b/gdb/infrun.c
@@ -2246,7 +2246,6 @@ start_remote (int from_tty)
{
struct inferior *inferior;
- init_wait_for_inferior ();
inferior = current_inferior ();
inferior->control.stop_soon = STOP_QUIETLY_REMOTE;
diff --git a/gdb/monitor.c b/gdb/monitor.c
index 79fa1ba..90f36d9 100644
--- a/gdb/monitor.c
+++ b/gdb/monitor.c
@@ -844,6 +844,8 @@ monitor_open (char *args, struct monitor_ops *mon_ops, int from_tty)
monitor_printf (current_monitor->line_term);
+ init_wait_for_inferior ();
+
start_remote (from_tty);
}
diff --git a/gdb/remote.c b/gdb/remote.c
index 8cdf79e..19cc0b6 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -3280,6 +3280,17 @@ remote_start_remote (int from_tty, struct target_ops *target, int extended_p)
/* Always add the main thread. */
add_thread_silent (inferior_ptid);
+ /* init_wait_for_inferior should be called before get_offsets in order
+ to manage `inserted' flag in bp loc in a correct state.
+ breakpoint_init_inferior, called from init_wait_for_inferior, set
+ `inserted' flag to 0, while before breakpoint_re_set, called from
+ start_remote, set `inserted' flag to 1. In the initialization of
+ inferior, breakpoint_init_inferior should be called first, and then
+ breakpoint_re_set can be called. If this order is broken, state of
+ `inserted' flag is wrong, and cause some problems on breakpoint
+ manipulation. */
+ init_wait_for_inferior ();
+
get_offsets (); /* Get text, data & bss offsets. */
/* If we could not find a description using qXfer, and we know