version 1.264, 2017/05/05 15:17:32 |
version 1.266, 2017/06/07 20:58:49 |
Line 278 mdoc_ptext(struct roff_man *mdoc, int line, char *buf, |
|
Line 278 mdoc_ptext(struct roff_man *mdoc, int line, char *buf, |
|
for (c = buf + offs; c != NULL; c = strchr(c + 1, '.')) { |
for (c = buf + offs; c != NULL; c = strchr(c + 1, '.')) { |
if (c - buf < offs + 2) |
if (c - buf < offs + 2) |
continue; |
continue; |
if (end - c < 4) |
if (end - c < 3) |
break; |
break; |
if (isalpha((unsigned char)c[-2]) && |
if (c[1] != ' ' || |
isalpha((unsigned char)c[-1]) && |
isalpha((unsigned char)c[-2]) == 0 || |
c[1] == ' ' && |
isalpha((unsigned char)c[-1]) == 0 || |
isupper((unsigned char)(c[2] == ' ' ? c[3] : c[2])) && |
(c[-2] == 'n' && c[-1] == 'c') || |
(c[-2] != 'n' || c[-1] != 'c') && |
(c[-2] == 'v' && c[-1] == 's')) |
(c[-2] != 'v' || c[-1] != 's')) |
continue; |
|
c += 2; |
|
if (*c == ' ') |
|
c++; |
|
if (*c == ' ') |
|
c++; |
|
if (isupper((unsigned char)(*c))) |
mandoc_msg(MANDOCERR_EOS, mdoc->parse, |
mandoc_msg(MANDOCERR_EOS, mdoc->parse, |
line, (int)(c - buf), NULL); |
line, (int)(c - buf), NULL); |
} |
} |