You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2017/01/21 14:43:00 UTC
svn commit: r1779734 - in /httpcomponents/httpcore/trunk/httpcore5/src:
main/java/org/apache/hc/core5/net/URIBuilder.java
test/java/org/apache/hc/core5/net/TestURIBuilder.java
Author: olegk
Date: Sat Jan 21 14:43:00 2017
New Revision: 1779734
URL: http://svn.apache.org/viewvc?rev=1779734&view=rev
Log:
HTTPCLIENT-1803: Improved handling of malformed paths by URIBuilder
Modified:
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java
httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/net/TestURIBuilder.java
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java?rev=1779734&r1=1779733&r2=1779734&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java Sat Jan 21 14:43:00 2017
@@ -474,7 +474,7 @@ public class URIBuilder {
private static String normalizePath(final String path) {
String s = path;
if (s == null) {
- return null;
+ return "/";
}
int n = 0;
for (; n < s.length(); n++) {
@@ -485,6 +485,9 @@ public class URIBuilder {
if (n > 1) {
s = s.substring(n - 1);
}
+ if (!s.startsWith("/")) {
+ s = "/" + s;
+ }
return s;
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/net/TestURIBuilder.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/net/TestURIBuilder.java?rev=1779734&r1=1779733&r2=1779734&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/net/TestURIBuilder.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/net/TestURIBuilder.java Sat Jan 21 14:43:00 2017
@@ -292,4 +292,11 @@ public class TestURIBuilder {
return parameters;
}
+ @Test
+ public void testMalformedPath() throws Exception {
+ final String path = "@notexample.com/mypath";
+ final URI uri = new URIBuilder(path).setHost("example.com").build();
+ Assert.assertEquals("example.com", uri.getHost());
+ }
+
}