aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoakim Verona2012-12-13 10:52:25 +0100
committerJoakim Verona2012-12-13 10:52:25 +0100
commitfc25410c44bac7cc8b21f203c0c160591270da0e (patch)
tree34f375ecc266282715391d645ffb431c219038ac
parenta9d34ef10eae3e4ca9facc905ab05653a2fa27ea (diff)
parent5f3a3bb1f5f0dffb8f2aa9c1437da623c48ac8dd (diff)
downloademacs-fc25410c44bac7cc8b21f203c0c160591270da0e.tar.gz
emacs-fc25410c44bac7cc8b21f203c0c160591270da0e.zip
auto upstream
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/emacs-lisp/edebug.el27
2 files changed, 29 insertions, 4 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 22069406451..0f4eaff5797 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--require-cl-read): New function.
4 (edebug-setup-hook, cl-read-load-hooks): Use it.
5 (edebug-unload-function): New function. (Bug#13163)
6
12012-12-13 Michael Albinus <michael.albinus@gmx.de> 72012-12-13 Michael Albinus <michael.albinus@gmx.de>
2 8
3 * net/tramp-adb.el (tramp-adb-file-name-p): Make it a defsubst. 9 * net/tramp-adb.el (tramp-adb-file-name-p): Make it a defsubst.
diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el
index 315fbbcf1f3..6ff1daeca81 100644
--- a/lisp/emacs-lisp/edebug.el
+++ b/lisp/emacs-lisp/edebug.el
@@ -4402,12 +4402,13 @@ With prefix argument, make it a temporary breakpoint."
4402;;; Autoloading of Edebug accessories 4402;;; Autoloading of Edebug accessories
4403 4403
4404;; edebug-cl-read and cl-read are available from liberte@cs.uiuc.edu 4404;; edebug-cl-read and cl-read are available from liberte@cs.uiuc.edu
4405(defun edebug--require-cl-read ()
4406 (require 'edebug-cl-read))
4407
4405(if (featurep 'cl-read) 4408(if (featurep 'cl-read)
4406 (add-hook 'edebug-setup-hook 4409 (add-hook 'edebug-setup-hook #'edebug--require-cl-read)
4407 (function (lambda () (require 'edebug-cl-read))))
4408 ;; The following causes edebug-cl-read to be loaded when you load cl-read.el. 4410 ;; The following causes edebug-cl-read to be loaded when you load cl-read.el.
4409 (add-hook 'cl-read-load-hooks 4411 (add-hook 'cl-read-load-hooks #'edebug--require-cl-read))
4410 (function (lambda () (require 'edebug-cl-read)))))
4411 4412
4412 4413
4413;;; Finalize Loading 4414;;; Finalize Loading
@@ -4433,6 +4434,24 @@ With prefix argument, make it a temporary breakpoint."
4433;; Install edebug read and eval functions. 4434;; Install edebug read and eval functions.
4434(edebug-install-read-eval-functions) 4435(edebug-install-read-eval-functions)
4435 4436
4437(defun edebug-unload-function ()
4438 "Unload the Edebug source level debugger."
4439 (when edebug-active
4440 (unwind-protect
4441 (abort-recursive-edit)
4442 (setq edebug-active nil)
4443 (edebug-unload-function)))
4444 (save-current-buffer
4445 (dolist (buffer (buffer-list))
4446 (set-buffer buffer)
4447 (when (eq major-mode 'edebug-mode) (emacs-lisp-mode))))
4448 (remove-hook 'called-interactively-p-functions
4449 'edebug--called-interactively-skip)
4450 (remove-hook 'cl-read-load-hooks 'edebug--require-cl-read)
4451 (edebug-uninstall-read-eval-functions)
4452 ;; continue standard unloading
4453 nil)
4454
4436(provide 'edebug) 4455(provide 'edebug)
4437 4456
4438;;; edebug.el ends here 4457;;; edebug.el ends here