From 06485aa8215af39f9f5f999933aa39d349a2bdf9 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Fri, 12 Oct 2012 16:11:50 -0400 Subject: [PATCH] * src/doc.c (get_doc_string): Don't signal an error if the file is missing. * lisp/help-fns.el (describe-variable, describe-function-1): * lisp/help-mode.el (help-make-xrefs): Remove error handler, made unneeded. --- lisp/ChangeLog | 3 +++ lisp/help-fns.el | 14 +++++--------- lisp/help-mode.el | 14 ++++++-------- src/ChangeLog | 4 ++++ src/doc.c | 3 ++- 5 files changed, 20 insertions(+), 18 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index dd43dbb2fb..2a92c1178c 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2012-10-12 Stefan Monnier + * help-fns.el (describe-variable, describe-function-1): + * help-mode.el (help-make-xrefs): Remove error handler, made unneeded. + * emacs-lisp/eieio.el (lisp-imenu-generic-expression): Fix typo. 2012-10-12 Glenn Morris diff --git a/lisp/help-fns.el b/lisp/help-fns.el index f17b29de72..b552d8c135 100644 --- a/lisp/help-fns.el +++ b/lisp/help-fns.el @@ -615,9 +615,7 @@ FILE is the file where FUNCTION was probably defined." (point))) (terpri)(terpri) - (let* ((doc-raw (condition-case err - (documentation function t) - (error (format "No Doc! %S" err)))) + (let* ((doc-raw (documentation function t)) ;; If the function is autoloaded, and its docstring has ;; key substitution constructs, load the library. (doc (progn @@ -849,12 +847,10 @@ it is displayed along with the global value." (obsolete (get variable 'byte-obsolete-variable)) (use (car obsolete)) (safe-var (get variable 'safe-local-variable)) - (doc (condition-case err - (or (documentation-property - variable 'variable-documentation) - (documentation-property - alias 'variable-documentation)) - (error (format "Doc not found: %S" err)))) + (doc (or (documentation-property + variable 'variable-documentation) + (documentation-property + alias 'variable-documentation))) (extra-line nil)) ;; Mention if it's a local variable. diff --git a/lisp/help-mode.el b/lisp/help-mode.el index 9924300647..c1ce5a521b 100644 --- a/lisp/help-mode.el +++ b/lisp/help-mode.el @@ -505,14 +505,12 @@ that." ((and (or (boundp sym) (get sym 'variable-documentation)) - (condition-case err - (or - (documentation-property - sym 'variable-documentation) - (documentation-property - (indirect-variable sym) - 'variable-documentation)) - (error (message "No doc found: %S" err) nil))) + (or + (documentation-property + sym 'variable-documentation) + (documentation-property + (indirect-variable sym) + 'variable-documentation))) (help-xref-button 8 'help-variable sym)) ((fboundp sym) (help-xref-button 8 'help-function sym))))))) diff --git a/src/ChangeLog b/src/ChangeLog index d642950105..d753221b99 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2012-10-12 Stefan Monnier + + * doc.c (get_doc_string): Don't signal an error if the file is missing. + 2012-10-12 Jan Djärv * nsterm.m (hold_event_q): New static variable. diff --git a/src/doc.c b/src/doc.c index d2d664df26..9ead1addfb 100644 --- a/src/doc.c +++ b/src/doc.c @@ -144,7 +144,8 @@ get_doc_string (Lisp_Object filepos, bool unibyte, bool definition) } #endif if (fd < 0) - error ("Cannot open doc string file \"%s\"", name); + return concat3 (build_string ("Cannot open doc string file \""), + file, build_string ("\"\n")); } /* Seek only to beginning of disk block. */ -- 2.20.1