From 75a58ff911d520ea8c88e364a1303f81abb898cf Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Tue, 7 Sep 2021 14:56:35 +0000 Subject: Correctly calculate required column widths for tables containing cells that horizontally span columns which contains "n" (number) formatted cells on other rows. This requires updating total column widths from "n" formatted cells before starting width distribution from the spanning cells to their constituent columns. --- out.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'out.c') diff --git a/out.c b/out.c index bf7342ec..1aa0c0e3 100644 --- a/out.c +++ b/out.c @@ -1,7 +1,8 @@ -/* $Id: out.c,v 1.80 2021/08/10 12:55:03 schwarze Exp $ */ +/* $Id: out.c,v 1.81 2021/09/07 14:56:35 schwarze Exp $ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons - * Copyright (c) 2011,2014,2015,2017,2018 Ingo Schwarze + * Copyright (c) 2011, 2014, 2015, 2017, 2018, 2019, 2021 + * Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -354,8 +355,6 @@ tblcalc(struct rofftbl *tbl, const struct tbl_span *sp_first, col = tbl->cols + icol; if (col->width > col->nwidth) col->decimal += (col->width - col->nwidth) / 2; - else - col->width = col->nwidth; if (col->flags & TBL_CELL_EQUAL) { necol++; if (ewidth < col->width) @@ -563,5 +562,7 @@ tblcalc_number(struct rofftbl *tbl, struct roffcol *col, if (totsz > col->nwidth) col->nwidth = totsz; + if (col->nwidth > col->width) + col->width = col->nwidth; return totsz; } -- cgit v1.2.3-56-ge451