version 1.41, 2011/03/17 09:18:12 |
version 1.42, 2011/03/20 16:02:05 |
Line 296 mandoc_strdup(const char *ptr) |
|
Line 296 mandoc_strdup(const char *ptr) |
|
* or to the null byte terminating the argument line. |
* or to the null byte terminating the argument line. |
*/ |
*/ |
char * |
char * |
mandoc_getarg(char **cpp, mandocmsg msg, void *data, int ln, int *pos) |
mandoc_getarg(struct mparse *parse, char **cpp, int ln, int *pos) |
{ |
{ |
char *start, *cp; |
char *start, *cp; |
int quoted, pairs, white; |
int quoted, pairs, white; |
Line 343 mandoc_getarg(char **cpp, mandocmsg msg, void *data, i |
|
Line 343 mandoc_getarg(char **cpp, mandocmsg msg, void *data, i |
|
} |
} |
|
|
/* Quoted argument without a closing quote. */ |
/* Quoted argument without a closing quote. */ |
if (1 == quoted && msg) |
if (1 == quoted) |
(*msg)(MANDOCERR_BADQUOTE, data, ln, *pos, NULL); |
mandoc_msg(MANDOCERR_BADQUOTE, parse, ln, *pos, NULL); |
|
|
/* Null-terminate this argument and move to the next one. */ |
/* Null-terminate this argument and move to the next one. */ |
if (pairs) |
if (pairs) |
Line 357 mandoc_getarg(char **cpp, mandocmsg msg, void *data, i |
|
Line 357 mandoc_getarg(char **cpp, mandocmsg msg, void *data, i |
|
*pos += (int)(cp - start) + (quoted ? 1 : 0); |
*pos += (int)(cp - start) + (quoted ? 1 : 0); |
*cpp = cp; |
*cpp = cp; |
|
|
if ('\0' == *cp && msg && (white || ' ' == cp[-1])) |
if ('\0' == *cp && (white || ' ' == cp[-1])) |
(*msg)(MANDOCERR_EOLNSPACE, data, ln, *pos, NULL); |
mandoc_msg(MANDOCERR_EOLNSPACE, parse, ln, *pos, NULL); |
|
|
return(start); |
return(start); |
} |
} |
|
|
} |
} |
|
|
char * |
char * |
mandoc_normdate(char *in, mandocmsg msg, void *data, int ln, int pos) |
mandoc_normdate(struct mparse *parse, char *in, int ln, int pos) |
{ |
{ |
char *out; |
char *out; |
time_t t; |
time_t t; |
|
|
if (NULL == in || '\0' == *in || |
if (NULL == in || '\0' == *in || |
0 == strcmp(in, "$" "Mdocdate$")) { |
0 == strcmp(in, "$" "Mdocdate$")) { |
(*msg)(MANDOCERR_NODATE, data, ln, pos, NULL); |
mandoc_msg(MANDOCERR_NODATE, parse, ln, pos, NULL); |
time(&t); |
time(&t); |
} |
} |
else if (!a2time(&t, "$" "Mdocdate: %b %d %Y $", in) && |
else if (!a2time(&t, "$" "Mdocdate: %b %d %Y $", in) && |
!a2time(&t, "%b %d, %Y", in) && |
!a2time(&t, "%b %d, %Y", in) && |
!a2time(&t, "%Y-%m-%d", in)) { |
!a2time(&t, "%Y-%m-%d", in)) { |
(*msg)(MANDOCERR_BADDATE, data, ln, pos, NULL); |
mandoc_msg(MANDOCERR_BADDATE, parse, ln, pos, NULL); |
t = 0; |
t = 0; |
} |
} |
out = t ? time2a(t) : NULL; |
out = t ? time2a(t) : NULL; |