summaryrefslogtreecommitdiffstats
path: root/action.c
diff options
context:
space:
mode:
Diffstat (limited to 'action.c')
-rw-r--r--action.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/action.c b/action.c
index c30b8f4d..dca2bd08 100644
--- a/action.c
+++ b/action.c
@@ -292,7 +292,7 @@ post_dd(struct mdoc *mdoc)
if ( ! xstrlcat(date, n->data.text.string, sz))
return(mdoc_nerr(mdoc, n, "badly-formed manual date parameter"));
- if ( ! xstrlcat(date, " ", sz))
+ if (n->next && ! xstrlcat(date, " ", sz))
return(mdoc_nerr(mdoc, n, "badly-formed manual date parameter"));
}
@@ -300,6 +300,13 @@ post_dd(struct mdoc *mdoc)
mdoc_msg(mdoc, "parsed time: %u since epoch",
mdoc->meta.date);
return(1);
+ } else if (n)
+ return(mdoc_err(mdoc, "badly-formed manual date"));
+
+ if ((mdoc->meta.date = mdoc_atotime(date))) {
+ mdoc_msg(mdoc, "parsed time: %u since epoch",
+ mdoc->meta.date);
+ return(1);
}
return(mdoc_err(mdoc, "badly-formed manual date"));