diff options
author | Jan Bartel | 2013-09-09 02:41:28 +0000 |
---|---|---|
committer | Jan Bartel | 2013-09-09 02:41:28 +0000 |
commit | 11085742c888677ef6411e4e4e79e4b75d6876f8 (patch) | |
tree | ab9ec92a53ee031bf8e07b720aea0c47eef01f54 /jetty-http | |
parent | 28f3c1ac018c644b98fe7decb3459207c69baef6 (diff) | |
download | org.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.java | 3 | ||||
-rw-r--r-- | jetty-http/src/test/java/org/eclipse/jetty/http/PathMapTest.java | 2 |
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("", "/")); } /** |