2001-07-09 Gerd Moellmann <gerd@gnu.org>
+ * emacs-lisp/advice.el (ad-make-advised-definition): If the
+ original definition has an interactive form, but is Elp
+ instrumented, use the interactive form of the function called by
+ elp-wrapper.
+
* winner.el (winner-equal): Make it a defun. Don't compare Winner
configurations with compare-window-configuration; they aren't
window configurations.
(interactive-form
(cond (orig-macro-p nil)
(advised-interactive-form)
- ((ad-interactive-form origdef))
+ ((ad-interactive-form origdef)
+ (if (and (symbolp function) (get function 'elp-info))
+ (interactive-form (aref (get function 'elp-info) 2))
+ (ad-interactive-form origdef)))
;; Otherwise we must have a subr: make it interactive if
;; we have to and initialize required arguments in case
;; it is called interactively:
- (orig-interactive-p (interactive-form origdef))))
+ (orig-interactive-p
+ (interactive-form origdef))))
(orig-form
(cond ((or orig-special-form-p orig-macro-p)
;; Special forms and macros will be advised into macros.