Skip to content

Commit

Permalink
Ensure encodedQuery doesn't include the URL's fragment
Browse files Browse the repository at this point in the history
  • Loading branch information
EricEdens committed Nov 5, 2017
1 parent d9091b3 commit a1c44a9
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 1 deletion.
7 changes: 7 additions & 0 deletions okhttp-tests/src/test/java/okhttp3/HttpUrlTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -1440,6 +1440,13 @@ public final class HttpUrlTest {
assertEquals(" ", url.queryParameter(" "));
}

@Test public void parsedQueryDoesntIncludeFragment() {
HttpUrl url = HttpUrl.parse("http://host/?#fragment");
assertEquals("fragment", url.fragment());
assertEquals("", url.query());
assertEquals("", url.encodedQuery());
}

@Test public void roundTripBuilder() throws Exception {
HttpUrl url = new HttpUrl.Builder()
.scheme("http")
Expand Down
2 changes: 1 addition & 1 deletion okhttp/src/main/java/okhttp3/HttpUrl.java
Original file line number Diff line number Diff line change
Expand Up @@ -611,7 +611,7 @@ public List<String> pathSegments() {
public @Nullable String encodedQuery() {
if (queryNamesAndValues == null) return null; // No query.
int queryStart = url.indexOf('?') + 1;
int queryEnd = delimiterOffset(url, queryStart + 1, url.length(), '#');
int queryEnd = delimiterOffset(url, queryStart, url.length(), '#');
return url.substring(queryStart, queryEnd);
}

Expand Down

0 comments on commit a1c44a9

Please sign in to comment.