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

Reply via email to