Pass Ctrl-C to the target in target_terminal_inferior
[deliverable/binutils-gdb.git] / gdb / target.c
index ac66a3a8993407219dddfa59318df78b5d83cd39..d580983c4fa6b4ded042fe63799fa3c1176aae8c 100644 (file)
@@ -491,6 +491,11 @@ target_terminal_inferior (void)
      inferior's terminal modes.  */
   (*current_target.to_terminal_inferior) (&current_target);
   terminal_state = terminal_is_inferior;
+
+  /* If the user hit C-c before, pretend that it was hit right
+     here.  */
+  if (check_quit_flag ())
+    target_pass_ctrlc ();
 }
 
 /* See target.h.  */
@@ -3359,6 +3364,22 @@ target_interrupt (ptid_t ptid)
 
 /* See target.h.  */
 
+void
+target_pass_ctrlc (void)
+{
+  (*current_target.to_pass_ctrlc) (&current_target);
+}
+
+/* See target.h.  */
+
+void
+default_target_pass_ctrlc (struct target_ops *ops)
+{
+  target_interrupt (inferior_ptid);
+}
+
+/* See target.h.  */
+
 void
 target_check_pending_interrupt (void)
 {
This page took 0.029588 seconds and 4 git commands to generate.