[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ad-remove-advice bug.
From: |
Michaël Cadilhac |
Subject: |
Re: ad-remove-advice bug. |
Date: |
Thu, 08 Mar 2007 19:07:33 +0100 |
User-agent: |
Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.95 (gnu/linux) |
Richard Stallman <address@hidden> writes:
> Now, use M-x ad-remove-advice RET RET RET RET (the default each time)
> There's two annoying things :
> 1. M-x describe-function RET forward-line RET says :
> | This subr is advised.
>
> That's not a bug; we need not do anything now.
>
> Your patch looks maybe ok for the future, but let's not do anything
> there now.
OK, so we'll see later.
> 2. M-x ad-remove-advice default values are impossible.
>
> I do not understand.
After the first call to `ad-remove-advice', the second call defaults
its arguments to `forward-line' which has no more advices.
Maybe we just want the following:
Index: lisp/emacs-lisp/advice.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/emacs-lisp/advice.el,v
retrieving revision 1.49
diff -B -w -c -r1.49 advice.el
*** lisp/emacs-lisp/advice.el 21 Jan 2007 02:44:24 -0000 1.49
--- lisp/emacs-lisp/advice.el 8 Mar 2007 18:04:43 -0000
***************
*** 2278,2284 ****
"Read a complete function/class/name specification from minibuffer.
The list of read symbols will be returned. The optional PROMPT will
be used to prompt for the function."
! (let* ((function (ad-read-advised-function prompt))
(class (ad-read-advice-class function))
(name (ad-read-advice-name function class)))
(list function class name)))
--- 2278,2288 ----
"Read a complete function/class/name specification from minibuffer.
The list of read symbols will be returned. The optional PROMPT will
be used to prompt for the function."
! (let* ((predicate (lambda (fun)
! (ad-dolist (class ad-advice-classes)
! (if (ad-get-advice-info-field fun class)
! (ad-do-return t)))))
! (function (ad-read-advised-function prompt predicate))
(class (ad-read-advice-class function))
(name (ad-read-advice-name function class)))
(list function class name)))
Index: lisp/ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/lisp/ChangeLog,v
retrieving revision 1.10783
diff -C0 -r1.10783 ChangeLog
*** lisp/ChangeLog 7 Mar 2007 12:50:23 -0000 1.10783
--- lisp/ChangeLog 8 Mar 2007 18:05:05 -0000
***************
*** 0 ****
--- 1,6 ----
+ 2007-03-08 Michaël Cadilhac <address@hidden>
+
+ * emacs-lisp/advice.el (ad-read-advice-specification): Check that the
+ default value taken by `ad-read-advised-function' has non-empty
+ classes.
+
--
| Michaël `Micha' Cadilhac | ... KVim is cited in the talk. |
| http://michael.cadilhac.name | "I can't tell if I am more sorry |
| JID/MSN: | for vim or for KDE." |
`---- address@hidden | -- RMS - --'
pgphP5EpDgms_.pgp
Description: PGP signature