summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1995-03-18 18:13:23 +0000
committerRichard M. Stallman <rms@gnu.org>1995-03-18 18:13:23 +0000
commit80ddb8edf43fc059efabc69fa8c26ce365ffebeb (patch)
treef3d392bd8a2e8ecb880eb287cfed17e7541003a7 /lisp/emacs-lisp
parent925a67ca07b1c9986d432be8c3105dd04c65de22 (diff)
downloademacs-80ddb8edf43fc059efabc69fa8c26ce365ffebeb.tar.gz
emacs-80ddb8edf43fc059efabc69fa8c26ce365ffebeb.tar.bz2
emacs-80ddb8edf43fc059efabc69fa8c26ce365ffebeb.zip
(debugger-outer-load-read-function): New variable.
(debug): Bind load-read-function to nil; save old value in debugger-outer-load-read-function and restore at end. (debugger-eval-expression): Handle load-read-function like other magic variables. (debugger-outer-overriding-local-map): New variable. (debug): Bind overriding-local-map to nil; save old value in debugger-outer-overriding-local-map and restore at end. (debugger-eval-expression): Handle overriding-local-map like other magic variables.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/debug.el14
1 files changed, 13 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el
index 2adb499246c..ab809ee2550 100644
--- a/lisp/emacs-lisp/debug.el
+++ b/lisp/emacs-lisp/debug.el
@@ -40,6 +40,8 @@
"This is the buffer that was current when the debugger was entered.")
(defvar debugger-outer-match-data)
+(defvar debugger-outer-load-read-function)
+(defvar debugger-outer-overriding-local-map)
(defvar debugger-outer-track-mouse)
(defvar debugger-outer-last-command)
(defvar debugger-outer-this-command)
@@ -77,6 +79,8 @@ first will be printed into the backtrace buffer."
;; Save the outer values of these vars for the `e' command
;; before we replace the values.
(debugger-outer-match-data (match-data))
+ (debugger-outer-load-read-function load-read-function)
+ (debugger-outer-overriding-local-map overriding-local-map)
(debugger-outer-track-mouse track-mouse)
(debugger-outer-last-command last-command)
(debugger-outer-this-command this-command)
@@ -94,6 +98,8 @@ first will be printed into the backtrace buffer."
(unread-command-char -1) unread-command-events
last-input-event last-command-event last-nonmenu-event
last-event-frame
+ overriding-local-map
+ load-read-function
(standard-input t) (standard-output t)
(cursor-in-echo-area nil))
(unwind-protect
@@ -169,6 +175,8 @@ first will be printed into the backtrace buffer."
(store-match-data debugger-outer-match-data)))
;; Put into effect the modified values of these variables
;; in case the user set them with the `e' command.
+ (setq load-read-function debugger-outer-load-read-function)
+ (setq overriding-local-map debugger-outer-overriding-local-map)
(setq track-mouse debugger-outer-track-mouse)
(setq last-command debugger-outer-last-command)
(setq this-command debugger-outer-this-command)
@@ -314,10 +322,14 @@ Applies to the frame whose line point is on in the backtrace."
(last-event-frame debugger-outer-last-event-frame)
(standard-input debugger-outer-standard-input)
(standard-output debugger-outer-standard-output)
- (cursor-in-echo-area debugger-outer-cursor-in-echo-area))
+ (cursor-in-echo-area debugger-outer-cursor-in-echo-area)
+ (overriding-local-map debugger-outer-overriding-local-map)
+ (load-read-function debugger-outer-load-read-function))
(store-match-data debugger-outer-match-data)
(prog1 (eval-expression exp)
(setq debugger-outer-match-data (match-data))
+ (setq debugger-outer-load-read-function load-read-function)
+ (setq debugger-outer-overriding-local-map overriding-local-map)
(setq debugger-outer-track-mouse track-mouse)
(setq debugger-outer-last-command last-command)
(setq debugger-outer-this-command this-command)