diff options
author | mlindfors <majuli@vaadin.com> | 2019-02-04 13:54:09 +0200 |
---|---|---|
committer | Anastasia Smirnova <anasmi@utu.fi> | 2019-02-04 13:54:09 +0200 |
commit | 4c1919c6ec83ef60f44e688aafe83a2eaf25ef97 (patch) | |
tree | 94d0ca6799ee917091b5e8e2b5235dec06119ca1 /server | |
parent | 18ce7e396540906649388179149abf59880d69ee (diff) | |
download | vaadin-framework-4c1919c6ec83ef60f44e688aafe83a2eaf25ef97.tar.gz vaadin-framework-4c1919c6ec83ef60f44e688aafe83a2eaf25ef97.zip |
Fix an NPE caused by the previous fix to Grid's frozen columns (#11444)
* Fix an NPE caused by the previous fix to Grid's frozen columns (#10653)
If the user managed to get two frozen column count changes into a single server round-trip before the component had been attached, the previous fix #11346 lead to a null pointer exception since there was no diff state available.
This fix adds a null check before removing the frozen column count value from the diff state so that this will not happen.
Closes #10653
Diffstat (limited to 'server')
-rw-r--r-- | server/src/main/java/com/vaadin/ui/Grid.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/server/src/main/java/com/vaadin/ui/Grid.java b/server/src/main/java/com/vaadin/ui/Grid.java index 650bf7cab5..9ee57512b2 100644 --- a/server/src/main/java/com/vaadin/ui/Grid.java +++ b/server/src/main/java/com/vaadin/ui/Grid.java @@ -3232,8 +3232,12 @@ public class Grid<T> extends AbstractListing<T> implements HasComponents, final String diffStateKey = "frozenColumnCount"; UI ui = getUI(); if (ui != null) { - ui.getConnectorTracker().getDiffState(Grid.this) - .remove(diffStateKey); + JsonObject diffState = ui.getConnectorTracker() + .getDiffState(Grid.this); + // if diffState is not present, there's nothing for us to clean + if (diffState != null) { + diffState.remove(diffStateKey); + } } } getState().frozenColumnCount = numberOfColumns; |