Repository: cloudstack
Updated Branches:
  refs/heads/hotfix/CID-1256277 [created] f06e7b00e


CID-1256277 use StringBuffer in loop

Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/f06e7b00
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/f06e7b00
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/f06e7b00

Branch: refs/heads/hotfix/CID-1256277
Commit: f06e7b00e2b7dceaf760eaf312277917b933c55b
Parents: 6dd30ea
Author: Daan Hoogland <dhoogl...@schubergphilis.com>
Authored: Wed Dec 3 12:16:24 2014 +0100
Committer: Daan Hoogland <d...@onecht.net>
Committed: Wed Dec 3 12:16:24 2014 +0100

----------------------------------------------------------------------
 server/src/com/cloud/user/AccountManagerImpl.java | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/f06e7b00/server/src/com/cloud/user/AccountManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/user/AccountManagerImpl.java 
b/server/src/com/cloud/user/AccountManagerImpl.java
index b6aa201..ab10c27 100644
--- a/server/src/com/cloud/user/AccountManagerImpl.java
+++ b/server/src/com/cloud/user/AccountManagerImpl.java
@@ -1998,6 +1998,7 @@ public class AccountManagerImpl extends ManagerBase 
implements AccountManager, M
             String signature = null;
             long timestamp = 0L;
             String unsignedRequest = null;
+            StringBuffer unsignedRequestBuffer = new StringBuffer();
 
             // - build a request string with sorted params, make sure it's all 
lowercase
             // - sign the request, verify the signature is the same
@@ -2038,11 +2039,10 @@ public class AccountManagerImpl extends ManagerBase 
implements AccountManager, M
                             }
                         }
 
-                        if (unsignedRequest == null) {
-                            unsignedRequest = paramName + "=" + 
URLEncoder.encode(paramValue, "UTF-8").replaceAll("\\+", "%20");
-                        } else {
-                            unsignedRequest = unsignedRequest + "&" + 
paramName + "=" + URLEncoder.encode(paramValue, "UTF-8").replaceAll("\\+", 
"%20");
+                        if (unsignedRequestBuffer.length() == 0) {
+                            unsignedRequestBuffer.append("&");
                         }
+                        
unsignedRequestBuffer.append(paramName).append("=").append(URLEncoder.encode(paramValue,
 "UTF-8"));
                     }
                 }
 
@@ -2053,7 +2053,7 @@ public class AccountManagerImpl extends ManagerBase 
implements AccountManager, M
                     return null;
                 }
 
-                unsignedRequest = unsignedRequest.toLowerCase();
+                unsignedRequest = 
unsignedRequestBuffer.toString().toLowerCase().replaceAll("\\+", "%20");
 
                 Mac mac = Mac.getInstance("HmacSHA1");
                 SecretKeySpec keySpec = new SecretKeySpec(key.getBytes(), 
"HmacSHA1");

Reply via email to