emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r107822: doc.c fix for bug#11036


From: Glenn Morris
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r107822: doc.c fix for bug#11036
Date: Mon, 09 Apr 2012 16:43:15 -0400
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 107822
committer: Glenn Morris <address@hidden>
branch nick: trunk
timestamp: Mon 2012-04-09 16:43:15 -0400
message:
  doc.c fix for bug#11036
  
  * src/doc.c (Fsnarf_documentation): Check variables, functions are bound,
  not just in the obarray, before snarfing them.
modified:
  src/ChangeLog
  src/doc.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-04-09 20:37:08 +0000
+++ b/src/ChangeLog     2012-04-09 20:43:15 +0000
@@ -1,5 +1,8 @@
 2012-04-09  Glenn Morris  <address@hidden>
 
+       * doc.c (Fsnarf_documentation): Check variables, functions are bound,
+       not just in the obarray, before snarfing them.  (Bug#11036)
+
        * Makefile.in ($(leimdir)/leim-list.el):
        Pass EMACS rather than BUILT_EMACS.
 

=== modified file 'src/doc.c'
--- a/src/doc.c 2012-02-06 16:53:51 +0000
+++ b/src/doc.c 2012-04-09 20:43:15 +0000
@@ -1,6 +1,6 @@
 /* Record indices of function doc strings stored in a file.
-   Copyright (C) 1985-1986, 1993-1995, 1997-2012
-                 Free Software Foundation, Inc.
+
+Copyright (C) 1985-1986, 1993-1995, 1997-2012 Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
@@ -671,15 +671,18 @@
                  /* Install file-position as variable-documentation property
                     and make it negative for a user-variable
                     (doc starts with a `*').  */
-                 Fput (sym, Qvariable_documentation,
-                       make_number ((pos + end + 1 - buf)
-                                    * (end[1] == '*' ? -1 : 1)));
+                  if (!NILP (Fboundp (sym)))
+                    Fput (sym, Qvariable_documentation,
+                          make_number ((pos + end + 1 - buf)
+                                       * (end[1] == '*' ? -1 : 1)));
                }
 
              /* Attach a docstring to a function?  */
              else if (p[1] == 'F')
-               store_function_docstring (sym, pos + end + 1 - buf);
-
+                {
+                  if (!NILP (Ffboundp (sym)))
+                    store_function_docstring (sym, pos + end + 1 - buf);
+                }
              else if (p[1] == 'S')
                ; /* Just a source file name boundary marker.  Ignore it.  */
 


reply via email to

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