]> git.eshelyaron.com Git - emacs.git/commitdiff
(remove-hook): Use equal to see if hook is just that fcn.
authorRichard M. Stallman <rms@gnu.org>
Thu, 23 Dec 1993 04:43:01 +0000 (04:43 +0000)
committerRichard M. Stallman <rms@gnu.org>
Thu, 23 Dec 1993 04:43:01 +0000 (04:43 +0000)
(add-hook): Use member to see if a lambda expr is already in the list.

lisp/subr.el

index f21ec98c823f3534b12141264fe5dcf207e4e92e..9d6e4ac32280aaa1c8af00e21d0bcd5fb560f5e1 100644 (file)
@@ -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))))
 \f