Translate PyExc_KeyboardInterrupt to gdb "quit"
authorTom Tromey <tom@tromey.com>
Tue, 25 Dec 2018 19:38:01 +0000 (12:38 -0700)
committerTom Tromey <tom@tromey.com>
Thu, 27 Dec 2018 20:34:39 +0000 (13:34 -0700)
commitbc543c902f9891f732be68817e16ff379b69566e
treef7efae208fc1ffdb36ba601b33905652550523a6
parent6ef2312a177ebdfa841e82b515c144975073a501
Translate PyExc_KeyboardInterrupt to gdb "quit"

A while back I typed "info pretty-printers" with a large number of
printers installed, and I typed "q" to stop the pagination.  I noticed
that gdb printed a Python exception in this case.

It seems to me that, instead, quitting pagination (or control-c'ing a
Python command generally) should be handled the same way that gdb
normally handles a quit.

This patch implements this idea by changing gdbpy_handle_exception to
treat PyExc_KeyboardInterrupt specially.

gdb/ChangeLog
2018-12-27  Tom Tromey  <tom@tromey.com>

* python/py-utils.c (gdbpy_handle_exception): Translate
PyExc_KeyboardInterrupt to quit.

gdb/testsuite/ChangeLog
2018-12-27  Tom Tromey  <tom@tromey.com>

* gdb.python/py-cmd.exp (test_python_inline_or_multiline): Add
pagination test.
gdb/ChangeLog
gdb/python/py-utils.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.python/py-cmd.exp