emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] Snarf-documentation was working by accident


From: Daniel Colascione
Subject: [PATCH] Snarf-documentation was working by accident
Date: Fri, 13 Aug 2010 02:02:08 -0700
User-agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.8) Gecko/20100802 Thunderbird/3.1.2

etc/DOC contains documentation for two kinds of symbol:

1) symbols in C
2) symbols in preloaded lisp

There's a test that makes sure a C file is used in a particular build of
Emacs before including its documentation. This test sets a flag if the
file is unused, and if this flag is set, we don't load any more
documentation until we see another file. Scenario 2 neither set nor
tested this flag, so it just used whatever value the flag happened to
have for the last C file; if the last C file happened to not be included
in this build of Emacs, the documentation for the Lisp file was never
loaded.

The effect was that documentation would mysteriously go missing. This
patch always includes documentation for Lisp files.

(Also, is all this lazy loading complexity really needed? etc/DOC is
only 2.3MB here.)

Load documentation from DOC
Index: emacs-23.2/src/doc.c
===================================================================
--- emacs-23.2.orig/src/doc.c
+++ emacs-23.2/src/doc.c
@@ -659,6 +659,12 @@ the same file name is found in the `doc-
              skip_file = NILP (Fmember (build_string (fromfile),
                                         Vbuild_files));
             }
+          else if(p[1] == 'S')
+            {
+              /* File is compiled lisp and its docstrings should
+                 always be included */
+              skip_file = 0;
+            }

          sym = oblookup (Vobarray, p + 2,
                          multibyte_chars_in_text (p + 2, end - p - 2),



reply via email to

[Prev in Thread] Current Thread [Next in Thread]