Author: markt Date: Fri Aug 21 14:02:43 2015 New Revision: 1696998 URL: http://svn.apache.org/r1696998 Log: Fix an HTTP/2 TODO for processing URIs. Add support for query strings
Modified: tomcat/trunk/java/org/apache/coyote/http2/Stream.java Modified: tomcat/trunk/java/org/apache/coyote/http2/Stream.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/Stream.java?rev=1696998&r1=1696997&r2=1696998&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/Stream.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Stream.java Fri Aug 21 14:02:43 2015 @@ -169,9 +169,17 @@ public class Stream extends AbstractStre break; } case ":path": { - coyoteRequest.requestURI().setString(value); - // TODO: This is almost certainly wrong and needs to be decoded - coyoteRequest.decodedURI().setString(value); + int queryStart = value.indexOf('?'); + if (queryStart == -1) { + coyoteRequest.requestURI().setString(value); + coyoteRequest.decodedURI().setString(coyoteRequest.getURLDecoder().convert(value, false)); + } else { + String uri = value.substring(0, queryStart); + String query = value.substring(queryStart + 1); + coyoteRequest.requestURI().setString(uri); + coyoteRequest.decodedURI().setString(coyoteRequest.getURLDecoder().convert(uri, false)); + coyoteRequest.queryString().setString(coyoteRequest.getURLDecoder().convert(query, true)); + } break; } case ":authority": { --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org