Lisp_Object funcar;
Lisp_Object tem, doc;
+ doc = Qnil;
+
if (SYMBOLP (function)
&& (tem = Fget (function, Qfunction_documentation),
!NILP (tem)))
register int filled;
register int pos;
register char *p, *end;
- Lisp_Object sym, fun, tem;
+ Lisp_Object sym;
char *name;
#ifndef CANNOT_DUMP
register unsigned char *bufp;
int idx;
int bsize;
- unsigned char *new;
Lisp_Object tem;
Lisp_Object keymap;
unsigned char *start;
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;
tem = Fsymbol_value (name);
if (! NILP (tem))
{
- tem = get_keymap_1 (tem, 0, 1);
- /* Note that get_keymap_1 can GC. */
+ tem = get_keymap (tem, 0, 1);
+ /* Note that get_keymap can GC. */
strp = XSTRING (string)->data + idx;
start = XSTRING (string)->data + start_idx;
}
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++;