* remote.c (remote_notice_signals): New.

(remote_start_remote): In non-stop mode, update the remote end on
	which signals it can silently pass.
	(init_remote_ops): Install remote_notice_signals.
This commit is contained in:
Pedro Alves 2010-05-03 02:13:01 +00:00
parent 913f00150e
commit f022308135
2 changed files with 21 additions and 0 deletions

View File

@ -1,3 +1,10 @@
2010-05-03 Pedro Alves <pedro@codesourcery.com>
* remote.c (remote_notice_signals): New.
(remote_start_remote): In non-stop mode, update the remote end on
which signals it can silently pass.
(init_remote_ops): Install remote_notice_signals.
2010-05-02 Jan Kratochvil <jan.kratochvil@redhat.com>
* cli/cli-cmds.h (error_no_arg): Remove. Move the comment ...

View File

@ -1535,6 +1535,14 @@ remote_pass_signals (void)
}
}
static void
remote_notice_signals (ptid_t ptid)
{
/* Update the remote on signals to silently pass, if they've
changed. */
remote_pass_signals ();
}
/* If PTID is MAGIC_NULL_PTID, don't set any thread. If PTID is
MINUS_ONE_PTID, set the thread to -1, so the stub returns the
thread. If GEN is set, set the general thread, if not, then set
@ -3155,6 +3163,11 @@ remote_start_remote (struct ui_out *uiout, void *opaque)
/* In non-stop mode, any cached wait status will be stored in
the stop reply queue. */
gdb_assert (wait_status == NULL);
/* Update the remote on signals to silently pass, or more
importantly, which to not ignore, in case a previous session
had set some different set of signals to be ignored. */
remote_pass_signals ();
}
/* If we connected to a live target, do some additional setup. */
@ -9898,6 +9911,7 @@ Specify the serial device it is connected to\n\
remote_ops.to_kill = remote_kill;
remote_ops.to_load = generic_load;
remote_ops.to_mourn_inferior = remote_mourn;
remote_ops.to_notice_signals = remote_notice_signals;
remote_ops.to_thread_alive = remote_thread_alive;
remote_ops.to_find_new_threads = remote_threads_info;
remote_ops.to_pid_to_str = remote_pid_to_str;