aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeiron Liddle <keiron@apache.org>2001-01-10 00:18:43 +0000
committerKeiron Liddle <keiron@apache.org>2001-01-10 00:18:43 +0000
commitafd0547e64416e0e830c4c7b3ec65baa1fae560b (patch)
tree35268f3103416aa4700722d953cd946e5d91ed98
parent40e69b4701df8828da6d0adea3cfd4f9f81e4c92 (diff)
downloadxmlgraphics-fop-afd0547e64416e0e830c4c7b3ec65baa1fae560b.tar.gz
xmlgraphics-fop-afd0547e64416e0e830c4c7b3ec65baa1fae560b.zip
fixes a keep-with-previous problem
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@193959 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--src/org/apache/fop/fo/flow/TableBody.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/org/apache/fop/fo/flow/TableBody.java b/src/org/apache/fop/fo/flow/TableBody.java
index 46a340e30..da393004d 100644
--- a/src/org/apache/fop/fo/flow/TableBody.java
+++ b/src/org/apache/fop/fo/flow/TableBody.java
@@ -183,6 +183,7 @@ public class TableBody extends FObj {
Vector keepWith = new Vector();
int numChildren = this.children.size();
TableRow lastRow = null;
+ boolean endKeepGroup = true;
for (int i = this.marker; i < numChildren; i++) {
TableRow row = (TableRow) children.elementAt(i);
@@ -191,6 +192,11 @@ public class TableBody extends FObj {
if (row.getKeepWithPrevious().getType() != KeepValue.KEEP_WITH_AUTO && lastRow != null &&
keepWith.indexOf(lastRow) == -1) {
keepWith.addElement(lastRow);
+ endKeepGroup = false;
+ } else {
+ if(endKeepGroup) {
+ keepWith = new Vector();
+ }
}
Status status;
@@ -253,9 +259,10 @@ public class TableBody extends FObj {
return status;
} else if (status.getCode() == Status.KEEP_WITH_NEXT) {
keepWith.addElement(row);
+ endKeepGroup = false;
} else {
if (keepWith.size() > 0 && row.getKeepWithPrevious().getType() == KeepValue.KEEP_WITH_AUTO) {
- keepWith = new Vector();
+ endKeepGroup = true;
}
}
lastRow = row;