You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@joshua.apache.org by mj...@apache.org on 2016/06/25 03:49:41 UTC

incubator-joshua git commit: bugfix: url decode *after* parsing values, not before

Repository: incubator-joshua
Updated Branches:
  refs/heads/master f64c6c618 -> 31320f128


bugfix: url decode *after* parsing values, not before


Project: http://git-wip-us.apache.org/repos/asf/incubator-joshua/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-joshua/commit/31320f12
Tree: http://git-wip-us.apache.org/repos/asf/incubator-joshua/tree/31320f12
Diff: http://git-wip-us.apache.org/repos/asf/incubator-joshua/diff/31320f12

Branch: refs/heads/master
Commit: 31320f128cdb72b5cc36fb559e8cfb1f790259bc
Parents: f64c6c6
Author: Matt Post <po...@cs.jhu.edu>
Authored: Fri Jun 24 23:49:37 2016 -0400
Committer: Matt Post <po...@cs.jhu.edu>
Committed: Fri Jun 24 23:49:37 2016 -0400

----------------------------------------------------------------------
 src/main/java/org/apache/joshua/server/ServerThread.java | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/31320f12/src/main/java/org/apache/joshua/server/ServerThread.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/joshua/server/ServerThread.java b/src/main/java/org/apache/joshua/server/ServerThread.java
index d054515..0301e71 100644
--- a/src/main/java/org/apache/joshua/server/ServerThread.java
+++ b/src/main/java/org/apache/joshua/server/ServerThread.java
@@ -23,6 +23,7 @@ import java.io.IOException;
 import java.io.InputStreamReader;
 import java.io.OutputStream;
 import java.io.StringReader;
+import java.io.UnsupportedEncodingException;
 import java.net.Socket;
 import java.net.SocketException;
 import java.net.URLDecoder;
@@ -109,12 +110,12 @@ public class ServerThread extends Thread implements HttpHandler {
     }
   }
   
-  public HashMap<String, String> queryToMap(String query){
+  public HashMap<String, String> queryToMap(String query) throws UnsupportedEncodingException {
     HashMap<String, String> result = new HashMap<String, String>();
     for (String param : query.split("&")) {
         String pair[] = param.split("=");
         if (pair.length > 1) {
-            result.put(pair[0], pair[1]);
+          result.put(pair[0], URLDecoder.decode(pair[1], "UTF-8"));
         } else {
             result.put(pair[0], "");
         }
@@ -155,7 +156,7 @@ public class ServerThread extends Thread implements HttpHandler {
   @Override
   public synchronized void handle(HttpExchange client) throws IOException {
 
-    HashMap<String, String> params = queryToMap(URLDecoder.decode(client.getRequestURI().getQuery(), "UTF-8"));
+    HashMap<String, String> params = queryToMap(client.getRequestURI().getQuery());
     String query = params.get("q");
     String meta = params.get("meta");