remote: Move discard_pending_stop_replies call

This helps because discard_pending_stop_replies will later become a
method of remote_target.  Otherwise, when we have multiple instances
of remote_target, we'd have to make discard_pending_stop_replies find
the inferior's target_ops, and upcast it to remote_target (if indeed a
remote) to find the pending stop replies queue to clear.

gdb/ChangeLog:
2018-05-22  Pedro Alves  <palves@redhat.com>

	* remote.c (remote_target::mourn_inferior): Move
	discard_pending_stop_replies call here from ...
	(_initialize_remote): ... here.
This commit is contained in:
Pedro Alves 2018-05-22 18:22:09 +01:00
parent 0e9a6b2f04
commit 9607784ac0
2 changed files with 10 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c (remote_target::mourn_inferior): Move
discard_pending_stop_replies call here from ...
(_initialize_remote): ... here.
2018-05-22 Pedro Alves <palves@redhat.com>
* remote.c (compare_section_command): Remove set_general_process

View File

@ -9671,6 +9671,10 @@ remote_target::mourn_inferior ()
{
struct remote_state *rs = get_remote_state ();
/* We're no longer interested in notification events of an inferior
that exited or was killed/detached. */
discard_pending_stop_replies (current_inferior ());
/* In 'target remote' mode with one inferior, we close the connection. */
if (!rs->extended && number_of_live_inferiors () <= 1)
{
@ -14073,9 +14077,6 @@ _initialize_remote (void)
/* Hook into new objfile notification. */
gdb::observers::new_objfile.attach (remote_new_objfile);
/* We're no longer interested in notification events of an inferior
when it exits. */
gdb::observers::inferior_exit.attach (discard_pending_stop_replies);
#if 0
init_remote_threadtests ();