version 1.388, 2022/05/19 15:37:47 |
version 1.390, 2022/05/31 18:09:57 |
Line 1529 roff_expand(struct roff *r, struct buf *buf, int ln, i |
|
Line 1529 roff_expand(struct roff *r, struct buf *buf, int ln, i |
|
ubuf[1] = '\0'; |
ubuf[1] = '\0'; |
res = ubuf; |
res = ubuf; |
break; |
break; |
|
case 'V': |
|
mandoc_msg(MANDOCERR_UNSUPP, ln, iesc, |
|
"%.*s", iend - iesc, buf->buf + iesc); |
|
roff_expand_patch(buf, iendarg, "}", iend); |
|
roff_expand_patch(buf, iesc, "${", iarg); |
|
continue; |
|
case 'g': |
|
break; |
case 'n': |
case 'n': |
if (iendarg > iarg) |
if (iendarg > iarg) |
(void)snprintf(ubuf, sizeof(ubuf), "%d", |
(void)snprintf(ubuf, sizeof(ubuf), "%d", |
Line 1567 roff_expand_patch(struct buf *buf, int start, const ch |
|
Line 1575 roff_expand_patch(struct buf *buf, int start, const ch |
|
{ |
{ |
char *nbuf; |
char *nbuf; |
|
|
buf->buf[start] = '\0'; |
buf->sz = mandoc_asprintf(&nbuf, "%.*s%s%s", start, buf->buf, |
buf->sz = mandoc_asprintf(&nbuf, "%s%s%s", buf->buf, repl, |
repl, buf->buf + end) + 1; |
buf->buf + end) + 1; |
|
free(buf->buf); |
free(buf->buf); |
buf->buf = nbuf; |
buf->buf = nbuf; |
} |
} |