aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Becker2013-06-12 10:23:31 (EDT)
committerThomas Becker2013-06-12 10:23:31 (EDT)
commitd93faf589c38aa04bb589ea4946025e6a5dac346 (patch)
treebef95a5c07411f59a10a28f2e90d60a542aaa23f
parent9501ef339250382226f3a024c9f76d10c3f6e180 (diff)
downloadorg.eclipse.jetty.project-d93faf589c38aa04bb589ea4946025e6a5dac346.zip
org.eclipse.jetty.project-d93faf589c38aa04bb589ea4946025e6a5dac346.tar.gz
org.eclipse.jetty.project-d93faf589c38aa04bb589ea4946025e6a5dac346.tar.bz2
409598 spdy: Fix NPE when a broken client tried to create duplicate stream IDs
-rw-r--r--jetty-spdy/spdy-core/src/main/java/org/eclipse/jetty/spdy/StandardSession.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/jetty-spdy/spdy-core/src/main/java/org/eclipse/jetty/spdy/StandardSession.java b/jetty-spdy/spdy-core/src/main/java/org/eclipse/jetty/spdy/StandardSession.java
index 30dc870..067f7f7 100644
--- a/jetty-spdy/spdy-core/src/main/java/org/eclipse/jetty/spdy/StandardSession.java
+++ b/jetty-spdy/spdy-core/src/main/java/org/eclipse/jetty/spdy/StandardSession.java
@@ -490,9 +490,15 @@ public class StandardSession implements ISession, Parser.Listener, Dumpable
goAway(x.getSessionStatus(), 0, TimeUnit.SECONDS, new Callback.Adapter());
}
- private void onSyn(SynStreamFrame frame)
+ private void onSyn(final SynStreamFrame frame)
{
- IStream stream = createStream(frame, null, false, null);
+ IStream stream = createStream(frame, null, false, new Promise.Adapter<Stream>(){
+ @Override
+ public void failed(Throwable x)
+ {
+ LOG.debug("Received: {} but creating new Stream failed: {}", frame, x.getMessage());
+ }
+ });
if (stream != null)
processSyn(listener, stream, frame);
}