]> git.cameronkatri.com Git - mandoc.git/blobdiff - tbl_layout.c
Fix a regression caused by the insertion of two new tokens,
[mandoc.git] / tbl_layout.c
index e0573ec18844c4c9fdba11fca1fa8516dc9247c6..58599705c18c26aec86c76fc5d65063132e0331c 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: tbl_layout.c,v 1.45 2018/12/12 21:54:35 schwarze Exp $ */
+/*     $Id: tbl_layout.c,v 1.48 2018/12/14 05:18:03 schwarze Exp $ */
 /*
  * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2012, 2014, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org>
@@ -21,6 +21,7 @@
 
 #include <ctype.h>
 #include <stdint.h>
+#include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <time.h>
@@ -29,7 +30,7 @@
 #include "mandoc.h"
 #include "tbl.h"
 #include "libmandoc.h"
-#include "libroff.h"
+#include "tbl_int.h"
 
 struct tbl_phrase {
        char             name;
@@ -85,8 +86,7 @@ mod:
                        (*pos)++;
                        goto mod;
                }
-               mandoc_msg(MANDOCERR_TBLLAYOUT_PAR, tbl->parse,
-                   ln, *pos, NULL);
+               mandoc_msg(MANDOCERR_TBLLAYOUT_PAR, ln, *pos, NULL);
                return;
        }
 
@@ -114,8 +114,7 @@ mod:
                cp->flags |= TBL_CELL_ITALIC;
                goto mod;
        case 'm':
-               mandoc_msg(MANDOCERR_TBLLAYOUT_MOD, tbl->parse,
-                   ln, *pos, "m");
+               mandoc_msg(MANDOCERR_TBLLAYOUT_MOD, ln, *pos, "m");
                goto mod;
        case 'p':
        case 'v':
@@ -158,10 +157,10 @@ mod:
                        cp->vert++;
                else
                        mandoc_msg(MANDOCERR_TBLLAYOUT_VERT,
-                           tbl->parse, ln, *pos - 1, NULL);
+                           ln, *pos - 1, NULL);
                goto mod;
        default:
-               mandoc_vmsg(MANDOCERR_TBLLAYOUT_CHAR, tbl->parse,
+               mandoc_msg(MANDOCERR_TBLLAYOUT_CHAR,
                    ln, *pos - 1, "%c", p[*pos - 1]);
                goto mod;
        }
@@ -174,7 +173,7 @@ mod:
        /* Support only one-character font-names for now. */
 
        if (p[*pos] == '\0' || (p[*pos + 1] != ' ' && p[*pos + 1] != '.')) {
-               mandoc_vmsg(MANDOCERR_FT_BAD, tbl->parse,
+               mandoc_msg(MANDOCERR_FT_BAD,
                    ln, *pos, "TS %s", p + *pos - 1);
                if (p[*pos] != '\0')
                        (*pos)++;
@@ -196,7 +195,7 @@ mod:
        case 'R':
                goto mod;
        default:
-               mandoc_vmsg(MANDOCERR_FT_BAD, tbl->parse,
+               mandoc_msg(MANDOCERR_FT_BAD,
                    ln, *pos - 1, "TS f%c", p[*pos - 1]);
                goto mod;
        }
@@ -217,7 +216,7 @@ cell(struct tbl_node *tbl, struct tbl_row *rp,
                                rp->vert++;
                        else
                                mandoc_msg(MANDOCERR_TBLLAYOUT_VERT,
-                                   tbl->parse, ln, *pos, NULL);
+                                   ln, *pos, NULL);
                }
                (*pos)++;
        }
@@ -236,7 +235,7 @@ again:
                        break;
 
        if (i == KEYS_MAX) {
-               mandoc_vmsg(MANDOCERR_TBLLAYOUT_CHAR, tbl->parse,
+               mandoc_msg(MANDOCERR_TBLLAYOUT_CHAR,
                    ln, *pos, "%c", p[*pos]);
                (*pos)++;
                goto again;
@@ -247,14 +246,12 @@ again:
 
        if (c == TBL_CELL_SPAN) {
                if (rp->last == NULL)
-                       mandoc_msg(MANDOCERR_TBLLAYOUT_SPAN,
-                           tbl->parse, ln, *pos, NULL);
+                       mandoc_msg(MANDOCERR_TBLLAYOUT_SPAN, ln, *pos, NULL);
                else if (rp->last->pos == TBL_CELL_HORIZ ||
                    rp->last->pos == TBL_CELL_DHORIZ)
                        c = rp->last->pos;
        } else if (c == TBL_CELL_DOWN && rp == tbl->first_row)
-               mandoc_msg(MANDOCERR_TBLLAYOUT_DOWN,
-                   tbl->parse, ln, *pos, NULL);
+               mandoc_msg(MANDOCERR_TBLLAYOUT_DOWN, ln, *pos, NULL);
 
        (*pos)++;
 
@@ -297,7 +294,7 @@ tbl_layout(struct tbl_node *tbl, int ln, const char *p, int pos)
                        }
                        if (tbl->first_row->first == NULL) {
                                mandoc_msg(MANDOCERR_TBLLAYOUT_NONE,
-                                   tbl->parse, ln, pos, NULL);
+                                   ln, pos, NULL);
                                cell_alloc(tbl, tbl->first_row,
                                    TBL_CELL_LEFT);
                                if (tbl->opts.lvert < tbl->first_row->vert)