summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2011-09-27 21:20:41 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2011-09-27 21:20:41 -0400
commita8406c20c43b156a6af9b51ebfa75ba085ba396d (patch)
tree53555ad564d745f52b99dbd37e7884b5aa432991 /lisp/emacs-lisp
parenta239d4e9c0e6fe9fab01e24212fb1dbb158c0a53 (diff)
downloademacs-a8406c20c43b156a6af9b51ebfa75ba085ba396d.tar.gz
emacs-a8406c20c43b156a6af9b51ebfa75ba085ba396d.tar.bz2
emacs-a8406c20c43b156a6af9b51ebfa75ba085ba396d.zip
* lisp/emacs-lisp/debug.el (debug-convert-byte-code): Don't assume the
object has more than 4 slots. Fixes: debbugs:9613
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/debug.el4
1 files changed, 3 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el
index d7021a46165..d05a518e590 100644
--- a/lisp/emacs-lisp/debug.el
+++ b/lisp/emacs-lisp/debug.el
@@ -869,8 +869,10 @@ To specify a nil argument interactively, exit with an empty minibuffer."
,defn
,@(remq '&rest (remq '&optional args))))))
(if (> (length defn) 5)
+ ;; The mere presence of field 5 is sufficient to make
+ ;; it interactive.
(push `(interactive ,(aref defn 5)) body))
- (if (aref defn 4)
+ (if (and (> (length defn) 4) (aref defn 4))
;; Use `documentation' here, to get the actual string,
;; in case the compiled function has a reference
;; to the .elc file.