* 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

@ -1,3 +1,8 @@
2011-05-31 Helmut Eller <eller.helmut@gmail.com>
* debug.el (debug): Restore the previous content of the
*Backtrace* buffer when we exit with C-M-c.
2011-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
* minibuffer.el: Add metadata method to completion tables.

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))