diff options
author | James Bursa <james@netsurf-browser.org> | 2003-07-08 18:49:14 +0000 |
---|---|---|
committer | James Bursa <james@netsurf-browser.org> | 2003-07-08 18:49:14 +0000 |
commit | fc493927d40a5ad3205e2f08829ffe3f8bb60f7e (patch) | |
tree | bd86621dff02ae872811166bbea56235acb9d729 /render/box.c | |
parent | 133c3ee759bdc27f661390633064d7554027fbcb (diff) | |
download | netsurf-fc493927d40a5ad3205e2f08829ffe3f8bb60f7e.tar.gz netsurf-fc493927d40a5ad3205e2f08829ffe3f8bb60f7e.tar.bz2 |
[project @ 2003-07-08 18:49:14 by bursa]
Table span fixes.
svn path=/import/netsurf/; revision=211
Diffstat (limited to 'render/box.c')
-rw-r--r-- | render/box.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/render/box.c b/render/box.c index 13480ad2a..dca53b4e9 100644 --- a/render/box.c +++ b/render/box.c @@ -1170,10 +1170,8 @@ void box_normalise_table_row(struct box *row, } /* skip columns with cells spanning from above */ - while ((*row_span)[columns] != 0) { - (*row_span)[columns]--; + while ((*row_span)[columns] != 0) columns++; - } cell->start_column = columns; if (*table_columns < columns + cell->columns) { *table_columns = columns + cell->columns; @@ -1183,10 +1181,14 @@ void box_normalise_table_row(struct box *row, (*row_span)[*table_columns] = 0; /* sentinel */ } for (i = 0; i != cell->columns; i++) - (*row_span)[columns + i] = cell->rows - 1; + (*row_span)[columns + i] = cell->rows; columns += cell->columns; } + for (i = 0; i != *table_columns; i++) + if ((*row_span)[i] != 0) + (*row_span)[i]--; + /* if all columns have a rowspan, shrink it to the lowest equivalent */ min = (*row_span)[0]; for (i = 1; i != *table_columns; i++) |