diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 0c9e73ea5c0..1c73f8bdce2 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,8 @@ +2016-01-08 Yao Qi + + * remote-utils.c (getpkt): If c is '\003', call target hook + request_interrupt. + 2016-01-06 Yao Qi * linux-aarch32-low.h (arm_abi_breakpoint): Move to diff --git a/gdb/gdbserver/remote-utils.c b/gdb/gdbserver/remote-utils.c index 5f4382069c8..c5f4647052c 100644 --- a/gdb/gdbserver/remote-utils.c +++ b/gdb/gdbserver/remote-utils.c @@ -959,6 +959,15 @@ getpkt (char *buf) while (1) { c = readchar (); + + /* The '\003' may appear before or after each packet, so + check for an input interrupt. */ + if (c == '\003') + { + (*the_target->request_interrupt) (); + continue; + } + if (c == '$') break; if (remote_debug)