From 3a8ad8057352b753c868261c2eb7a11b81d3c325 Mon Sep 17 00:00:00 2001 From: Kristaps Dzonsons Date: Sun, 6 Feb 2011 22:02:58 +0000 Subject: Let the line-number of a tbl_span be remembered. --- tbl_data.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'tbl_data.c') diff --git a/tbl_data.c b/tbl_data.c index e21db323..70da2311 100644 --- a/tbl_data.c +++ b/tbl_data.c @@ -1,4 +1,4 @@ -/* $Id: tbl_data.c,v 1.21 2011/01/25 12:24:27 schwarze Exp $ */ +/* $Id: tbl_data.c,v 1.22 2011/02/06 22:02:58 kristaps Exp $ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons * Copyright (c) 2011 Ingo Schwarze @@ -29,10 +29,10 @@ #include "libmandoc.h" #include "libroff.h" -static int data(struct tbl_node *, struct tbl_span *, - int, const char *, int *); -static struct tbl_span *newspan(struct tbl_node *, struct tbl_row *); - +static int data(struct tbl_node *, struct tbl_span *, + int, const char *, int *); +static struct tbl_span *newspan(struct tbl_node *, int, + struct tbl_row *); static int data(struct tbl_node *tbl, struct tbl_span *dp, @@ -176,11 +176,12 @@ tbl_cdata(struct tbl_node *tbl, int ln, const char *p) } static struct tbl_span * -newspan(struct tbl_node *tbl, struct tbl_row *rp) +newspan(struct tbl_node *tbl, int line, struct tbl_row *rp) { struct tbl_span *dp; dp = mandoc_calloc(1, sizeof(struct tbl_span)); + dp->line = line; dp->tbl = &tbl->opts; dp->layout = rp; dp->head = tbl->first_head; @@ -226,11 +227,11 @@ tbl_data(struct tbl_node *tbl, int ln, const char *p) rp && rp->first; rp = rp->next) { switch (rp->first->pos) { case (TBL_CELL_HORIZ): - dp = newspan(tbl, rp); + dp = newspan(tbl, ln, rp); dp->pos = TBL_SPAN_HORIZ; continue; case (TBL_CELL_DHORIZ): - dp = newspan(tbl, rp); + dp = newspan(tbl, ln, rp); dp->pos = TBL_SPAN_DHORIZ; continue; default: @@ -248,7 +249,7 @@ tbl_data(struct tbl_node *tbl, int ln, const char *p) assert(rp); - dp = newspan(tbl, rp); + dp = newspan(tbl, ln, rp); if ( ! strcmp(p, "_")) { dp->pos = TBL_SPAN_HORIZ; -- cgit v1.2.3-56-ge451