Gitweb links:
...log
http://git.netsurf-browser.org/netsurf.git/shortlog/c36078db73ba4a5e7ad5f...
...commit
http://git.netsurf-browser.org/netsurf.git/commit/c36078db73ba4a5e7ad5fa0...
...tree
http://git.netsurf-browser.org/netsurf.git/tree/c36078db73ba4a5e7ad5fa001...
The branch, master has been updated
via c36078db73ba4a5e7ad5fa0019dfa3fffdead59d (commit)
from b7b3496a78fd08197899f588a4abc026c8636e74 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff
http://git.netsurf-browser.org/netsurf.git/commit/?id=c36078db73ba4a5e7ad...
commit c36078db73ba4a5e7ad5fa0019dfa3fffdead59d
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Fix collapsing borders with rowspan from previous row group.
Mantis #0002102
diff --git a/render/table.c b/render/table.c
index 5eba544..1dd179d 100644
--- a/render/table.c
+++ b/render/table.c
@@ -336,8 +336,9 @@ void table_used_left_border_for_cell(struct box *cell)
if (cell->prev == NULL) {
struct box *row;
+ struct box *rowg;
- /* Spanned from a previous row */
+ /* Spanned from a previous row in current row group */
for (row = cell->parent; row != NULL; row = row->prev) {
for (prev = row->children; prev != NULL;
prev = prev->next) {
@@ -351,6 +352,25 @@ void table_used_left_border_for_cell(struct box *cell)
break;
}
+ for (rowg = cell->parent->parent;
+ rowg != NULL && prev == NULL;
+ rowg = rowg->prev) {
+ /* Spanned from a previous row in
+ * previous row group */
+ for (row = rowg->last; row != NULL;
+ row = row->prev) {
+ for (prev = row->children;
+ prev != NULL;
+ prev = prev->next) {
+ if (prev->start_column +
+ prev->columns ==
+ cell->
+ start_column)
+ break;
+ }
+ }
+ }
+
assert(prev != NULL);
} else {
prev = cell->prev;
-----------------------------------------------------------------------
Summary of changes:
render/table.c | 22 +++++++++++++++++++++-
1 files changed, 21 insertions(+), 1 deletions(-)
diff --git a/render/table.c b/render/table.c
index 5eba544..1dd179d 100644
--- a/render/table.c
+++ b/render/table.c
@@ -336,8 +336,9 @@ void table_used_left_border_for_cell(struct box *cell)
if (cell->prev == NULL) {
struct box *row;
+ struct box *rowg;
- /* Spanned from a previous row */
+ /* Spanned from a previous row in current row group */
for (row = cell->parent; row != NULL; row = row->prev) {
for (prev = row->children; prev != NULL;
prev = prev->next) {
@@ -351,6 +352,25 @@ void table_used_left_border_for_cell(struct box *cell)
break;
}
+ for (rowg = cell->parent->parent;
+ rowg != NULL && prev == NULL;
+ rowg = rowg->prev) {
+ /* Spanned from a previous row in
+ * previous row group */
+ for (row = rowg->last; row != NULL;
+ row = row->prev) {
+ for (prev = row->children;
+ prev != NULL;
+ prev = prev->next) {
+ if (prev->start_column +
+ prev->columns ==
+ cell->
+ start_column)
+ break;
+ }
+ }
+ }
+
assert(prev != NULL);
} else {
prev = cell->prev;
--
NetSurf Browser