Guile QUIT processing updates
authorKevin Buettner <kevinb@redhat.com>
Mon, 27 Feb 2023 23:11:37 +0000 (16:11 -0700)
committerKevin Buettner <kevinb@redhat.com>
Mon, 27 Feb 2023 23:20:39 +0000 (16:20 -0700)
commit53f1f3d4aa7019a159d939b7bd2a27a93d630fda
tree5ebbd72f3dc6866bd22b5da6c6cec49ca26fc9c2
parentb940a061c0d549dbe981463414da87cb84a8a9bb
Guile QUIT processing updates

This commit contains QUIT processing updates for GDB's Guile support.
As with the Python updates, we don't want to permit this code to
swallow the exception, gdb_exception_forced_quit, which is associated
with GDB receiving a SIGTERM.

I've adopted the same solution that I used for Python; whereever
a gdb_exception is caught in try/catch code in the Guile extension
language support, a catch for gdb_exception_forced_quit has been
added; this catch block will simply call quit_force(), which will
cause the necessary cleanups to occur followed by GDB exiting.

Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=26761
Tested-by: Tom de Vries <tdevries@suse.de>
Approved-By: Pedro Alves <pedro@palves.net>
gdb/guile/guile-internal.h
gdb/guile/scm-pretty-print.c
gdb/guile/scm-type.c
gdb/guile/scm-value.c
gdb/top.h