]> git.cameronkatri.com Git - mandoc.git/blobdiff - man_validate.c
1. Eliminate struct eqn, instead use the existing members
[mandoc.git] / man_validate.c
index 7426bfbbc8a5ff8dea1bf3820514d0503c2c264e..12ba6e22e97b209b559826fc3e4e59e6368849c7 100644 (file)
@@ -89,6 +89,8 @@ static        const v_check __man_valids[MAN_MAX - MAN_TH] = {
        NULL,       /* EE */
        post_UR,    /* UR */
        NULL,       /* UE */
+       post_UR,    /* MT */
+       NULL,       /* ME */
 };
 static const v_check *man_valids = __man_valids - MAN_TH;
 
@@ -173,7 +175,9 @@ check_root(CHKARGS)
 
        if (man->meta.os_e &&
            (man->meta.rcsids & (1 << man->meta.os_e)) == 0)
-               mandoc_msg(MANDOCERR_RCS_MISSING, man->parse, 0, 0, NULL);
+               mandoc_msg(MANDOCERR_RCS_MISSING, man->parse, 0, 0,
+                   man->meta.os_e == MANDOC_OS_OPENBSD ?
+                   "(OpenBSD)" : "(NetBSD)");
 }
 
 static void
@@ -210,7 +214,7 @@ post_UR(CHKARGS)
 
        if (n->type == ROFFT_HEAD && n->child == NULL)
                mandoc_vmsg(MANDOCERR_UR_NOHEAD, man->parse,
-                   n->line, n->pos, "UR");
+                   n->line, n->pos, roff_name[n->tok]);
        check_part(man, n);
 }
 
@@ -340,12 +344,14 @@ post_TH(CHKARGS)
 
        if (n && (n = n->next))
                man->meta.os = mandoc_strdup(n->string);
-       else if (man->defos != NULL)
-               man->meta.os = mandoc_strdup(man->defos);
-       man->meta.os_e = man->meta.os == NULL ? MDOC_OS_OTHER :
-           strstr(man->meta.os, "OpenBSD") != NULL ? MDOC_OS_OPENBSD :
-           strstr(man->meta.os, "NetBSD") != NULL ? MDOC_OS_NETBSD :
-           MDOC_OS_OTHER;
+       else if (man->os_s != NULL)
+               man->meta.os = mandoc_strdup(man->os_s);
+       if (man->meta.os_e == MANDOC_OS_OTHER && man->meta.os != NULL) {
+               if (strstr(man->meta.os, "OpenBSD") != NULL)
+                       man->meta.os_e = MANDOC_OS_OPENBSD;
+               else if (strstr(man->meta.os, "NetBSD") != NULL)
+                       man->meta.os_e = MANDOC_OS_NETBSD;
+       }
 
        /* TITLE MSEC DATE OS ->VOL<- */
        /* If missing, use the default VOL name for MSEC. */