From: Richard M. Stallman Date: Thu, 23 Dec 1993 04:43:01 +0000 (+0000) Subject: (remove-hook): Use equal to see if hook is just that fcn. X-Git-Tag: emacs-19.34~10549 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=f48c1d8d7cb0278edbfcaf45ecbf3e93f3f653ed;p=emacs.git (remove-hook): Use equal to see if hook is just that fcn. (add-hook): Use member to see if a lambda expr is already in the list. --- diff --git a/lisp/subr.el b/lisp/subr.el index f21ec98c823..9d6e4ac3228 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -486,10 +486,7 @@ function, it is changed to a list of functions." (if (or (not (listp old)) (eq (car old) 'lambda)) (set hook (list old)))) (or (if (consp function) - ;; Clever way to tell whether a given lambda-expression - ;; is equal to anything in the hook. - (let ((tail (assoc (cdr function) (symbol-value hook)))) - (equal function tail)) + (member function (symbol-value hook)) (memq function (symbol-value hook))) (set hook (if append @@ -508,7 +505,7 @@ list of hooks to run in HOOK, then nothing is done. See `add-hook'." (let ((hook-value (symbol-value hook))) (if (consp hook-value) (setq hook-value (delete function hook-value)) - (if (eq hook-value function) + (if (equal hook-value function) (setq hook-value nil))) (set hook hook-value))))