This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH 0/5] Fix multiple Ctrl-C/Quit issues
- From: Pedro Alves <palves at redhat dot com>
- To: gdb-patches at sourceware dot org
- Date: Mon, 6 Nov 2017 23:22:11 +0000
- Subject: [PATCH 0/5] Fix multiple Ctrl-C/Quit issues
- Authentication-results: sourceware.org; auth=none
- Authentication-results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=palves at redhat dot com
- Dmarc-filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 5978F5D689
As I mentioned before, I've been messing with GDB's terminal handling
in context of multi-target. While doing some inflow.c surgery, I had
the bright idea of writing a test that did:
break foo
commands
printf "hello\n"
continue
and run that against a program that does basically:
while (1)
foo ();
and then while the inferior is running and hitting that breakpoint,
hit Ctrl-C, to make sure target_terminal::inferior/ours handling was
correct and that the user always re-gained control.
Unfortunately, that test hit a number of other, preexisting
problems... (I never learn... :-P) This series fixes them, and then
adds a testcase similar to the above. The test passes cleanly with
the fixes in place, but fails otherwise.
Pedro Alves (5):
Simplify child_terminal_inferior
Fix swallowed "Quit" when inserting breakpoints
Fix stdin ending up not registered after a Quit
Don't ever Quit out of resume
Python unwinder sniffer: PyExc_KeyboardInterrupt -> Quit
gdb/ChangeLog | 7 +++++++
gdb/breakpoint.c | 41 +++++++++++++++++++++--------------------
gdb/gnu-nat.c | 7 -------
gdb/inf-loop.c | 10 +++++++++-
gdb/inflow.c | 22 +++++-----------------
gdb/infrun.c | 43 ++++++++-----------------------------------
gdb/python/py-unwind.c | 7 +++++++
7 files changed, 57 insertions(+), 80 deletions(-)
--
2.5.5