aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuanma Barranquero2012-12-13 19:15:42 +0100
committerJuanma Barranquero2012-12-13 19:15:42 +0100
commitce0440ff9661d84a7632379923af8449986ca56e (patch)
tree589c6ece3e27bda8592efd33c487f9bb7b6b2070
parent893f52d89586fe46009ee077858f6ecd847e3e09 (diff)
downloademacs-ce0440ff9661d84a7632379923af8449986ca56e.tar.gz
emacs-ce0440ff9661d84a7632379923af8449986ca56e.zip
lisp/emacs-lisp/edebug.el: Fix previous change.
(edebug-unload-function): Make sure that unload-feature finishes even when aborting an ongoing edebug session. Also, do not worry about edebug-mode, unload-feature takes care of it.
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/emacs-lisp/edebug.el9
2 files changed, 9 insertions, 6 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index fd6671cc29a..66af3378b14 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
12012-12-13 Juanma Barranquero <lekktu@gmail.com>
2
3 * emacs-lisp/edebug.el (edebug-unload-function): Make sure that
4 unload-feature finishes even when aborting an ongoing edebug session.
5 Also, do not worry about edebug-mode, unload-feature takes care of it.
6
12012-12-13 Andreas Schwab <schwab@suse.de> 72012-12-13 Andreas Schwab <schwab@suse.de>
2 8
3 * net/tls.el (tls-program): Update customize type. 9 * net/tls.el (tls-program): Update customize type.
diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el
index c2ff81281a1..a9722796ecb 100644
--- a/lisp/emacs-lisp/edebug.el
+++ b/lisp/emacs-lisp/edebug.el
@@ -4293,14 +4293,11 @@ With prefix argument, make it a temporary breakpoint."
4293(defun edebug-unload-function () 4293(defun edebug-unload-function ()
4294 "Unload the Edebug source level debugger." 4294 "Unload the Edebug source level debugger."
4295 (when edebug-active 4295 (when edebug-active
4296 (setq edebug-active nil)
4296 (unwind-protect 4297 (unwind-protect
4297 (abort-recursive-edit) 4298 (abort-recursive-edit)
4298 (setq edebug-active nil) 4299 ;; We still want to run unload-feature to completion
4299 (edebug-unload-function))) 4300 (run-with-idle-timer 0 nil #'(lambda () (unload-feature 'edebug)))))
4300 (save-current-buffer
4301 (dolist (buffer (buffer-list))
4302 (set-buffer buffer)
4303 (when (eq major-mode 'edebug-mode) (emacs-lisp-mode))))
4304 (remove-hook 'called-interactively-p-functions 4301 (remove-hook 'called-interactively-p-functions
4305 'edebug--called-interactively-skip) 4302 'edebug--called-interactively-skip)
4306 (remove-hook 'cl-read-load-hooks 'edebug--require-cl-read) 4303 (remove-hook 'cl-read-load-hooks 'edebug--require-cl-read)