diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2015-01-30 04:11:50 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2015-01-30 04:11:50 +0000 |
commit | 71fa4361c47e9ed2f3c6521e9273fabb41aadc20 (patch) | |
tree | ac472a0b2793a26633a7405d837eaa7fa648ea74 /tbl_layout.c | |
parent | 8ea5dc6d40c942157256ddd510bd3fa16cb44303 (diff) | |
download | mandoc-71fa4361c47e9ed2f3c6521e9273fabb41aadc20.tar.gz mandoc-71fa4361c47e9ed2f3c6521e9273fabb41aadc20.tar.zst mandoc-71fa4361c47e9ed2f3c6521e9273fabb41aadc20.zip |
Abolish struct tbl_head and replace it by an "int col" member in
struct tbl_cell. No functional change, minus 40 lines of code.
Diffstat (limited to 'tbl_layout.c')
-rw-r--r-- | tbl_layout.c | 33 |
1 files changed, 7 insertions, 26 deletions
diff --git a/tbl_layout.c b/tbl_layout.c index e22816f6..dc745b33 100644 --- a/tbl_layout.c +++ b/tbl_layout.c @@ -1,4 +1,4 @@ -/* $Id: tbl_layout.c,v 1.36 2015/01/30 02:09:04 schwarze Exp $ */ +/* $Id: tbl_layout.c,v 1.37 2015/01/30 04:11:50 schwarze Exp $ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2012, 2014, 2015 Ingo Schwarze <schwarze@openbsd.org> @@ -282,7 +282,7 @@ tbl_layout(struct tbl_node *tbl, int ln, const char *p, int pos) if (tbl->opts.lvert < rp->vert) tbl->opts.lvert = rp->vert; if (rp->last != NULL && - rp->last->head == tbl->last_head && + rp->last->col + 1 == tbl->opts.cols && tbl->opts.rvert < rp->last->vert) tbl->opts.rvert = rp->last->vert; @@ -324,38 +324,19 @@ static struct tbl_cell * cell_alloc(struct tbl_node *tbl, struct tbl_row *rp, enum tbl_cellt pos) { struct tbl_cell *p, *pp; - struct tbl_head *h, *hp; p = mandoc_calloc(1, sizeof(*p)); + p->pos = pos; if ((pp = rp->last) != NULL) { pp->next = p; - h = pp->head->next; - } else { + p->col = pp->col + 1; + } else rp->first = p; - h = tbl->first_head; - } rp->last = p; - p->pos = pos; - - /* Re-use header. */ - - if (h != NULL) { - p->head = h; - return(p); - } - - hp = mandoc_calloc(1, sizeof(*hp)); - hp->ident = tbl->opts.cols++; - - if (tbl->last_head != NULL) { - hp->prev = tbl->last_head; - tbl->last_head->next = hp; - } else - tbl->first_head = hp; - tbl->last_head = hp; + if (tbl->opts.cols <= p->col) + tbl->opts.cols = p->col + 1; - p->head = hp; return(p); } |