Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Bartel2013-09-09 02:41:28 +0000
committerJan Bartel2013-09-09 02:41:28 +0000
commit11085742c888677ef6411e4e4e79e4b75d6876f8 (patch)
treeab9ec92a53ee031bf8e07b720aea0c47eef01f54 /jetty-http
parent28f3c1ac018c644b98fe7decb3459207c69baef6 (diff)
downloadorg.eclipse.jetty.project-11085742c888677ef6411e4e4e79e4b75d6876f8.tar.gz
org.eclipse.jetty.project-11085742c888677ef6411e4e4e79e4b75d6876f8.tar.xz
org.eclipse.jetty.project-11085742c888677ef6411e4e4e79e4b75d6876f8.zip
416787 StringIndexOutOfBounds with a pathMap of ""
Diffstat (limited to 'jetty-http')
-rw-r--r--jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java3
-rw-r--r--jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java2
2 files changed, 5 insertions, 0 deletions
diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java b/jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java
index 1cdea65178..be51abbb47 100644
--- a/jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java
+++ b/jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java
@@ -414,6 +414,9 @@ public class PathMap extends HashMap implements Externalizable
public static boolean match(String pathSpec, String path, boolean noDefault)
throws IllegalArgumentException
{
+ if (pathSpec.length()==0)
+ return "/".equals(path);
+
char c = pathSpec.charAt(0);
if (c=='/')
{
diff --git a/jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java b/jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java
index 20dd0c804d..7402275a32 100644
--- a/jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java
+++ b/jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java
@@ -133,6 +133,8 @@ public class PathMapTest extends TestCase
assertTrue("!match *.foo", !PathMap.match("*.foo", "anything.bar"));
assertEquals("match / with ''", "10", p.getMatch("/").getValue());
+
+ assertTrue("match \"\"", PathMap.match("", "/"));
}
/**

Back to the top