aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerd Moellmann2001-03-29 14:11:46 +0000
committerGerd Moellmann2001-03-29 14:11:46 +0000
commite2b8a8307614d0b603bbf98beed3b154e67a95c4 (patch)
treea9cd47e0fb3d53c9f7159cffc2f729aa4c429111
parentd320078883e811c787ebdac0ed6aba82bb16a2a9 (diff)
downloademacs-e2b8a8307614d0b603bbf98beed3b154e67a95c4.tar.gz
emacs-e2b8a8307614d0b603bbf98beed3b154e67a95c4.zip
(ad-make-advised-definition): Call
interactive-form to obtain the interactive spec of subrs.
-rw-r--r--lisp/ChangeLog7
-rw-r--r--lisp/emacs-lisp/advice.el9
2 files changed, 9 insertions, 7 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 05ffc2d2bf1..6801e15190c 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,10 @@
12001-03-29 Gerd Moellmann <gerd@gnu.org>
2
3 * emacs-lisp/advice.el (ad-make-advised-definition): Call
4 interactive-form to obtain the interactive spec of subrs.
5
6 * subr.el (interactive-form): New function.
7
12001-03-29 Andre Spiegel <spiegel@gnu.org> 82001-03-29 Andre Spiegel <spiegel@gnu.org>
2 9
3 * vc-sccs.el (vc-sccs-register): Use relative file names. 10 * vc-sccs.el (vc-sccs-register): Use relative file names.
diff --git a/lisp/emacs-lisp/advice.el b/lisp/emacs-lisp/advice.el
index 4d32929ee9b..0333c51df64 100644
--- a/lisp/emacs-lisp/advice.el
+++ b/lisp/emacs-lisp/advice.el
@@ -1,6 +1,6 @@
1;;; advice.el --- an overloading mechanism for Emacs Lisp functions 1;;; advice.el --- an overloading mechanism for Emacs Lisp functions
2 2
3;; Copyright (C) 1993,1994,2000 Free Software Foundation, Inc. 3;; Copyright (C) 1993,1994,2000, 2001 Free Software Foundation, Inc.
4 4
5;; Author: Hans Chalupsky <hans@cs.buffalo.edu> 5;; Author: Hans Chalupsky <hans@cs.buffalo.edu>
6;; Maintainer: FSF 6;; Maintainer: FSF
@@ -3072,12 +3072,7 @@ Example: `(ad-map-arglists '(a &rest args) '(w x y z))' will return
3072 ;; Otherwise we must have a subr: make it interactive if 3072 ;; Otherwise we must have a subr: make it interactive if
3073 ;; we have to and initialize required arguments in case 3073 ;; we have to and initialize required arguments in case
3074 ;; it is called interactively: 3074 ;; it is called interactively:
3075 (orig-interactive-p 3075 (orig-interactive-p (interactive-form origdef))))
3076 (let ((reqargs (car (ad-parse-arglist advised-arglist))))
3077 (if reqargs
3078 (` (interactive
3079 '(, (make-list (length reqargs) nil))))
3080 '(interactive))))))
3081 (orig-form 3076 (orig-form
3082 (cond ((or orig-special-form-p orig-macro-p) 3077 (cond ((or orig-special-form-p orig-macro-p)
3083 ;; Special forms and macros will be advised into macros. 3078 ;; Special forms and macros will be advised into macros.