- 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;
+ }