1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-15 10:30:25 -08:00

* debug.el (debug): Restore the previous content of the

*Backtrace* buffer when we exit with C-M-c.
This commit is contained in:
Helmut Eller 2011-05-31 12:24:33 -03:00 committed by Stefan Monnier
parent 2ad0baf4e6
commit e8296fdc98
2 changed files with 8 additions and 0 deletions

View file

@ -120,6 +120,7 @@ first will be printed into the backtrace buffer."
(debug-on-quit nil)
(debugger-buffer (get-buffer-create "*Backtrace*"))
(debugger-old-buffer (current-buffer))
(debugger-previous-contents nil)
(debugger-step-after-exit nil)
(debugger-will-be-back nil)
;; Don't keep reading from an executing kbd macro!
@ -181,6 +182,7 @@ first will be printed into the backtrace buffer."
(when (eq 'lambda (car-safe (cadr (backtrace-frame 4))))
(backtrace-debug 5 t)))
(pop-to-buffer debugger-buffer)
(setq debugger-previous-contents (buffer-string))
(debugger-mode)
(debugger-setup-buffer debugger-args)
(when noninteractive
@ -215,6 +217,7 @@ first will be printed into the backtrace buffer."
;; erase it (and maybe hide it) but keep it alive.
(with-current-buffer debugger-buffer
(erase-buffer)
(insert debugger-previous-contents)
(fundamental-mode)
(with-selected-window (get-buffer-window debugger-buffer 0)
(when (and (window-dedicated-p (selected-window))