summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Heuer <kwzh@gnu.org>1994-02-02 21:35:07 +0000
committerKarl Heuer <kwzh@gnu.org>1994-02-02 21:35:07 +0000
commit835cd48e6a2503f1f364f3160b77248c50516c5c (patch)
tree2f3bfbfa16c9fc38f61901c59c68a0bc19d71e2d
parentd9f132a8acbbc2f4d5043b6f17f9f897ada96135 (diff)
downloademacs-835cd48e6a2503f1f364f3160b77248c50516c5c.tar.gz
(ad-execute-defadvices): Don't allocate advice-infos in pure space, in case we
want to preload this file.
-rw-r--r--lisp/emacs-lisp/advice.el7
1 files changed, 6 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/advice.el b/lisp/emacs-lisp/advice.el
index 9a6f1fc09c8..83c81a98088 100644
--- a/lisp/emacs-lisp/advice.el
+++ b/lisp/emacs-lisp/advice.el
@@ -4050,7 +4050,12 @@ functions in `ad-definition-hooks' will be run after the re/definition with
(if (not (ad-get-arg 1))
(setq ad-return-value
(substitute-command-keys ad-return-value))))))))
-
+
+;; Make sure advice-infos are not allocated in pure space (right now they
+;; are constants that are part of `ad-execute-defadvices's definition):
+(ad-dolist (advised-function '(defun defmacro fset defalias
+ define-function documentation))
+ (ad-set-advice-info advised-function (ad-copy-advice-info advised-function)))
) ;; end of ad-execute-defadvices