diff --git a/lisp/help-fns.el b/lisp/help-fns.el index 4e0bfee..af9b918 100644 --- a/lisp/help-fns.el +++ b/lisp/help-fns.el @@ -223,7 +223,10 @@ find-lisp-object-file-name ;; FIXME: Why do we have this weird "If TYPE is the ;; value returned by `symbol-function' for a function ;; symbol" exception? - object (or (if (symbolp type) type) 'defun))))) + object (if (and (symbolp type) + (memq type (list 'defvar 'defface))) + type + 'defun))))) (cond (autoloaded ;; An autoloaded function: Locate the file since `symbol-function'