diff options
Diffstat (limited to 'jetty-servlets')
-rw-r--r-- | jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java index 038865dfa3..d6710d74db 100644 --- a/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java +++ b/jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java @@ -44,6 +44,7 @@ import org.eclipse.jetty.http.HttpField; import org.eclipse.jetty.http.HttpFields; import org.eclipse.jetty.http.HttpHeader; import org.eclipse.jetty.http.HttpURI; +import org.eclipse.jetty.http.HttpVersion; import org.eclipse.jetty.server.Dispatcher; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.util.StringUtil; @@ -113,6 +114,12 @@ public class PushCacheFilter implements Filter @Override public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException { + if (HttpVersion.fromString(req.getProtocol()).getVersion() < 20) + { + chain.doFilter(req, resp); + return; + } + long now = System.nanoTime(); HttpServletRequest request = (HttpServletRequest)req; @@ -166,6 +173,8 @@ public class PushCacheFilter implements Filter if ("GET".equalsIgnoreCase(request.getMethod())) { String referrerPath = referrerURI.getPath(); + if (referrerPath == null) + referrerPath = "/"; if (referrerPath.startsWith(request.getContextPath())) { String referrerPathNoContext = referrerPath.substring(request.getContextPath().length()); |