summaryrefslogtreecommitdiff
path: root/lisp/progmodes/gdb-mi.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2020-02-01 07:50:10 -0800
committerGlenn Morris <rgm@gnu.org>2020-02-01 07:50:10 -0800
commit0ceb5d0b23e64712d5a2c29b642489524cdbd6d4 (patch)
treee6180c252e0dab1f8992bac997c361a39426ba8c /lisp/progmodes/gdb-mi.el
parentfcac8fcf17ddfef218bb97db4322083077ec7306 (diff)
parent5bf2ef3871b0f42266f6bde7c0d2d607e9625770 (diff)
downloademacs-0ceb5d0b23e64712d5a2c29b642489524cdbd6d4.tar.gz
emacs-0ceb5d0b23e64712d5a2c29b642489524cdbd6d4.tar.bz2
emacs-0ceb5d0b23e64712d5a2c29b642489524cdbd6d4.zip
Merge from origin/emacs-27
5bf2ef3871 Add more blackboard bold characters to TeX input method c362a624d8 ; * lisp/progmodes/gdb-mi.el (gdb-handle-reply): Fix comme... 2b1e18ae85 Protect against errors in gdb-mi.el handlers baceb8e84d Allow exiting the Python interpreter of a GDB session 2e66013dcf Ensure minibuffer input is added to history in read_minibuf de41161534 Tab-bar related fixes. 247f2cfa02 ; ChangeLog.3 fixes. e1a712bb3f * admin/authors.el: Add missing entries.
Diffstat (limited to 'lisp/progmodes/gdb-mi.el')
-rw-r--r--lisp/progmodes/gdb-mi.el11
1 files changed, 8 insertions, 3 deletions
diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el
index e4233dacaf6..e785acd2840 100644
--- a/lisp/progmodes/gdb-mi.el
+++ b/lisp/progmodes/gdb-mi.el
@@ -324,7 +324,10 @@ in `gdb-handler-list' and clears all pending handlers invalidated
by the reception of this reply."
(let ((handler-function (gdb-get-handler-function token-number)))
(when handler-function
- (funcall handler-function)
+ ;; Protect against errors in handler-function.
+ (condition-case err
+ (funcall handler-function)
+ (error (message (error-message-string err))))
(gdb-delete-handler token-number))))
(defun gdb-remove-all-pending-triggers ()
@@ -1001,8 +1004,10 @@ no input, and GDB is waiting for input."
;; Sending an EOF does not work with GDB-MI; submit an
;; explicit quit command.
(progn
- (insert "quit")
- (comint-send-input t t))
+ (if (> gdb-control-level 0)
+ (process-send-eof proc)
+ (insert "quit")
+ (comint-send-input t t)))
(delete-char arg))))
(defvar gdb-define-alist nil "Alist of #define directives for GUD tooltips.")