emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/emacs-lisp/edebug.el,v


From: Richard M. Stallman
Subject: [Emacs-diffs] Changes to emacs/lisp/emacs-lisp/edebug.el,v
Date: Sun, 04 Mar 2007 17:53:04 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Richard M. Stallman <rms>       07/03/04 17:53:03

Index: edebug.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/emacs-lisp/edebug.el,v
retrieving revision 3.94
retrieving revision 3.95
diff -u -b -r3.94 -r3.95
--- edebug.el   21 Jan 2007 02:44:24 -0000      3.94
+++ edebug.el   4 Mar 2007 17:53:03 -0000       3.95
@@ -2939,6 +2939,7 @@
                      (edebug-overlay-arrow))
                  (setq buffer-read-only edebug-buffer-read-only)
                  (use-local-map edebug-outside-map)
+                 (remove-hook 'kill-buffer-hook 'edebug-kill-buffer t)
                  )
              ;; gotta have a buffer to let its buffer local variables be set
              (get-buffer-create " bogus edebug buffer"))
@@ -3942,8 +3943,18 @@
 edebug-unwrap-results
 edebug-global-break-condition
 "
+  ;; If the user kills the buffer in which edebug is currently active,
+  ;; exit to top level, because the edebug command loop can't usefully
+  ;; continue running in such a case.
+  (add-hook 'kill-buffer-hook 'edebug-kill-buffer nil t)
   (use-local-map edebug-mode-map))
 
+(defun edebug-kill-buffer ()
+  "Used on `kill-buffer-hook' when Edebug is operating in a buffer of Lisp 
code."
+  (let (kill-buffer-hook)
+    (kill-buffer (current-buffer)))
+  (top-level))
+
 ;;; edebug eval list mode
 
 ;; A list of expressions and their evaluations is displayed in *edebug*.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]