Skip to content

TableView2: StackOverflowException trying to fix a column #1610

@jperedadnr

Description

@jperedadnr

Run Sampler, select TableView2 sample, right click on a column header cell to fix it, this exception shows up:

Exception in thread "JavaFX Application Thread" java.lang.StackOverflowError
        at javafx.base/javafx.collections.ListChangeBuilder.insertAdd(ListChangeBuilder.java:127)
        at javafx.base/javafx.collections.ListChangeBuilder.nextAdd(ListChangeBuilder.java:254)
        at javafx.base/javafx.collections.ObservableListBase.nextAdd(ObservableListBase.java:185)
        at javafx.base/javafx.collections.ModifiableObservableListBase.add(ModifiableObservableListBase.java:160)
        at java.base/java.util.AbstractList.add(AbstractList.java:111)
        at javafx.controls/javafx.scene.control.CheckMenuItem$1.invalidated(CheckMenuItem.java:144)
        at javafx.base/javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:110)
        at javafx.base/javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:145)
        at javafx.base/com.sun.javafx.binding.BidirectionalBinding$BidirectionalBooleanBinding.invalidated(BidirectionalBinding.java:256)
        at javafx.base/com.sun.javafx.binding.ExpressionHelper$SingleInvalidation.fireValueChangedEvent(ExpressionHelper.java:136)
        at javafx.base/com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:80)
        at javafx.base/javafx.beans.property.BooleanPropertyBase.fireValueChangedEvent(BooleanPropertyBase.java:104)
        at javafx.base/javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:111)
        at javafx.base/javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:145)
        at org.controlsfx.controls@11.2.3-SNAPSHOT/org.controlsfx.control.action.Action$2.set(Action.java:165)
        at org.controlsfx.controls@11.2.3-SNAPSHOT/org.controlsfx.control.action.Action.setSelected(Action.java:194)
        at org.controlsfx.controls@11.2.3-SNAPSHOT/org.controlsfx.control.tableview2.actions.ColumnFixAction.lambda$new$0(ColumnFixAction.java:117)
        at javafx.base/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(ListListenerHelper.java:321)
        at javafx.base/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(ListListenerHelper.java:73)
        at javafx.base/javafx.collections.ObservableListBase.fireChange(ObservableListBase.java:239)
        at javafx.base/javafx.collections.ListChangeBuilder.commit(ListChangeBuilder.java:482)
        at javafx.base/javafx.collections.ListChangeBuilder.endChange(ListChangeBuilder.java:541)
        at javafx.base/javafx.collections.ObservableListBase.endChange(ObservableListBase.java:211)
        at javafx.base/javafx.collections.ModifiableObservableListBase.add(ModifiableObservableListBase.java:162)
        at java.base/java.util.AbstractList.add(AbstractList.java:111)
        at org.controlsfx.controls@11.2.3-SNAPSHOT/org.controlsfx.control.tableview2.actions.ColumnFixAction.lambda$initialize$2(ColumnFixAction.java:149)
        at org.controlsfx.controls@11.2.3-SNAPSHOT/org.controlsfx.control.action.Action.setSelected(Action.java:196)
        at org.controlsfx.controls@11.2.3-SNAPSHOT/org.controlsfx.control.tableview2.actions.ColumnFixAction.lambda$new$0(ColumnFixAction.java:117)
        at javafx.base/com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(ListListenerHelper.java:321)
        at javafx.base/com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(ListListenerHelper.java:73)
        at javafx.base/javafx.collections.ObservableListBase.fireChange(ObservableListBase.java:239)
        at javafx.base/javafx.collections.ListChangeBuilder.commit(ListChangeBuilder.java:482)
        at javafx.base/javafx.collections.ListChangeBuilder.endChange(ListChangeBuilder.java:541)
        at javafx.base/javafx.collections.ObservableListBase.endChange(ObservableListBase.java:211)
        at javafx.base/javafx.collections.ModifiableObservableListBase.remove(ModifiableObservableListBase.java:190)
        at javafx.base/javafx.collections.ModifiableObservableListBase.remove(ModifiableObservableListBase.java:178)
        at org.controlsfx.controls@11.2.3-SNAPSHOT/org.controlsfx.control.tableview2.actions.ColumnFixAction.lambda$initialize$2(ColumnFixAction.java:151)
        at org.controlsfx.controls@11.2.3-SNAPSHOT/org.controlsfx.control.action.Action.setSelected(Action.java:196)
...

Also note that the first column should be fixed but it is not:

getFixedColumns().setAll(fullNameColumn);
Image

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions