diff options
| author | Gerd Moellmann | 2001-03-29 14:11:46 +0000 |
|---|---|---|
| committer | Gerd Moellmann | 2001-03-29 14:11:46 +0000 |
| commit | e2b8a8307614d0b603bbf98beed3b154e67a95c4 (patch) | |
| tree | a9cd47e0fb3d53c9f7159cffc2f729aa4c429111 | |
| parent | d320078883e811c787ebdac0ed6aba82bb16a2a9 (diff) | |
| download | emacs-e2b8a8307614d0b603bbf98beed3b154e67a95c4.tar.gz emacs-e2b8a8307614d0b603bbf98beed3b154e67a95c4.zip | |
(ad-make-advised-definition): Call
interactive-form to obtain the interactive spec of subrs.
| -rw-r--r-- | lisp/ChangeLog | 7 | ||||
| -rw-r--r-- | lisp/emacs-lisp/advice.el | 9 |
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 @@ | |||
| 1 | 2001-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 | |||
| 1 | 2001-03-29 Andre Spiegel <spiegel@gnu.org> | 8 | 2001-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. |