]> code.delx.au - gnu-emacs/blobdiff - src/doc.c
Add description of +LINE:COLUMN.
[gnu-emacs] / src / doc.c
index afa7e9df947a5f2506f8f54f2d424b19d543ee84..8f888316f7a7735c201425cba69607bb03fe4061 100644 (file)
--- a/src/doc.c
+++ b/src/doc.c
@@ -313,6 +313,8 @@ string is passed through `substitute-command-keys'.")
   Lisp_Object funcar;
   Lisp_Object tem, doc;
 
+  doc = Qnil;
+  
   if (SYMBOLP (function)
       && (tem = Fget (function, Qfunction_documentation),
          !NILP (tem)))
@@ -475,7 +477,7 @@ when doc strings are referred to later in the dumped Emacs.")
   register int filled;
   register int pos;
   register char *p, *end;
-  Lisp_Object sym, fun, tem;
+  Lisp_Object sym;
   char *name;
 
 #ifndef CANNOT_DUMP
@@ -587,7 +589,6 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int
   register unsigned char *bufp;
   int idx;
   int bsize;
-  unsigned char *new;
   Lisp_Object tem;
   Lisp_Object keymap;
   unsigned char *start;
@@ -686,9 +687,9 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int
 
          if (NILP (tem))       /* but not on any keys */
            {
-             new = (unsigned char *) xrealloc (buf, bsize += 4);
-             bufp += new - buf;
-             buf = new;
+             int offset = bufp - buf;
+             buf = (unsigned char *) xrealloc (buf, bsize += 4);
+             bufp = buf + offset;
              bcopy ("M-x ", bufp, 4);
              bufp += 4;
              nchars += 4;
@@ -771,14 +772,16 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int
          length = XSTRING (tem)->size;
          length_byte = STRING_BYTES (XSTRING (tem));
        subst:
-         new = (unsigned char *) xrealloc (buf, bsize += length_byte);
-         bufp += new - buf;
-         buf = new;
-         bcopy (start, bufp, length_byte);
-         bufp += length_byte;
-         nchars += length;
-         /* Check STRING again in case gc relocated it.  */
-         strp = (unsigned char *) XSTRING (string)->data + idx;
+         {
+           int offset = bufp - buf;
+           buf = (unsigned char *) xrealloc (buf, bsize += length_byte);
+           bufp = buf + offset;
+           bcopy (start, bufp, length_byte);
+           bufp += length_byte;
+           nchars += length;
+           /* Check STRING again in case gc relocated it.  */
+           strp = (unsigned char *) XSTRING (string)->data + idx;
+         }
        }
       else if (! multibyte)            /* just copy other chars */
        *bufp++ = *strp++, nchars++;