diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | javax/swing/text/html/TableView.java | 10 |
2 files changed, 14 insertions, 2 deletions
@@ -1,5 +1,11 @@ 2006-12-06 Roman Kennke <kennke@aicas.com> + * javax/swing/text/html/TableView.java + (RowView.layoutMajorAxis): Check column index for invalid value. + (updateGrid): Check column index for invalid value. + +2006-12-06 Roman Kennke <kennke@aicas.com> + * javax/swing/text/html/BlockView.java (getAlignment): Align blocks horizontally by the superclass. * javax/swing/text/html/HTMLEditorKit.java diff --git a/javax/swing/text/html/TableView.java b/javax/swing/text/html/TableView.java index 0885e6372..f87d7b35f 100644 --- a/javax/swing/text/html/TableView.java +++ b/javax/swing/text/html/TableView.java @@ -183,9 +183,10 @@ class TableView updateGrid(); int numCols = offsets.length; int realColumn = 0; + int colCount = getViewCount(); for (int i = 0; i < numColumns;) { - if (! overlap[i]) + if (! overlap[i] && realColumn < colCount) { View v = getView(realColumn); if (v instanceof CellView) @@ -785,6 +786,7 @@ class TableView rowView.rowIndex = r; rowView.overlap = new boolean[maxColumns]; int colIndex = 0; + int colCount = rowView.getViewCount(); for (int c = 0; c < maxColumns;) { if (rowSpans[c] > 0) @@ -793,7 +795,7 @@ class TableView rowView.overlap[c] = true; c++; } - else + else if (colIndex < colCount) { View v = rowView.getView(colIndex); colIndex++; @@ -816,6 +818,10 @@ class TableView } } } + else + { + c++; + } } } } |