summaryrefslogtreecommitdiffstats
path: root/server/src
diff options
context:
space:
mode:
authorLeif Åstrand <leif@vaadin.com>2013-07-12 09:59:25 +0300
committerLeif Åstrand <leif@vaadin.com>2013-07-12 08:08:52 +0000
commit94c0f86fafd6808df902af0a4dbccd2b45922ba4 (patch)
treec0970e4837990224dc139c9d454cd8e3d45f9f8a /server/src
parent20162dbe200111a514ab0849963dcf3eea1a9c83 (diff)
downloadvaadin-framework-94c0f86fafd6808df902af0a4dbccd2b45922ba4.tar.gz
vaadin-framework-94c0f86fafd6808df902af0a4dbccd2b45922ba4.zip
Ensure VaadinSession.service is set up by storeInSession (#12204)
Change-Id: Ie707442f2625f3c9c07c75924c99299f07a4f3ec
Diffstat (limited to 'server/src')
-rw-r--r--server/src/com/vaadin/server/VaadinSession.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/server/src/com/vaadin/server/VaadinSession.java b/server/src/com/vaadin/server/VaadinSession.java
index 9dedddcc2c..890b2eba29 100644
--- a/server/src/com/vaadin/server/VaadinSession.java
+++ b/server/src/com/vaadin/server/VaadinSession.java
@@ -426,6 +426,13 @@ public class VaadinSession implements HttpSessionBindingListener, Serializable {
public void storeInSession(VaadinService service, WrappedSession session) {
assert hasLock(service, session);
session.setAttribute(getSessionAttributeName(service), this);
+
+ /*
+ * GAEVaadinServlet passes newly deserialized sessions here, which means
+ * that these transient fields need to be populated to avoid NPE from
+ * refreshLock().
+ */
+ this.service = service;
this.session = session;
refreshLock();
}