]> code.delx.au - gnu-emacs/blobdiff - lisp/erc/erc-backend.el
Fix selective diff browsing in Ediff
[gnu-emacs] / lisp / erc / erc-backend.el
index b8c67860e2014ff2227191a8d6be96f633e1e926..8ce199fbcbb02a57762073333f3e85caca66073f 100644 (file)
@@ -1162,8 +1162,11 @@ add things to `%s' instead."
           (cl-loop for alias in aliases
                    collect (intern (format "erc-server-%s-functions" alias)))))
     `(prog2
-         ;; Normal hook variable.
-         (defvar ,hook-name ',fn-name ,(format hook-doc name))
+         ;; Normal hook variable.  The variable may already have a
+         ;; value at this point, so I default to nil, and (add-hook)
+         ;; unconditionally
+         (defvar ,hook-name nil ,(format hook-doc name))
+         (add-to-list ',hook-name ',fn-name)
          ;; Handler function
          (defun ,fn-name (proc parsed)
            ,fn-doc