Index: /FCKeditor.Java/branches/2.4/src/main/java/net/fckeditor/tool/UploadResponse.java
===================================================================
--- /FCKeditor.Java/branches/2.4/src/main/java/net/fckeditor/tool/UploadResponse.java	(revision 1419)
+++ /FCKeditor.Java/branches/2.4/src/main/java/net/fckeditor/tool/UploadResponse.java	(revision 1420)
@@ -1,10 +1,7 @@
 package net.fckeditor.tool;
-
-import java.util.LinkedHashMap;
-import java.util.Map;
 
 public class UploadResponse {
 
-	private Map<String, Object> parameters;
+	private Object[] parameters;
 
 	// TODO Rename 'En_'-constants to something more intuitive like 'CODE_'
@@ -18,5 +15,4 @@
 
 	public static final String CM_HTTP_400 = "400 Bad request";
-	private static final String[] paramNames = {"errorNumber","fileUrl","filename","customMessage"};
 
 	public static final UploadResponse UR_INVALID_EXTENSION = new UploadResponse(
@@ -32,24 +28,23 @@
 					"The amount of arguments has to be between 1 and 4");
 
-		parameters = new LinkedHashMap<String, Object>(arguments.length);
+		parameters = new Object[arguments.length];
 
-		if (arguments[0] instanceof Integer)
-			parameters.put(UploadResponse.paramNames[0], arguments[0]);
-		else
+		if (!(arguments[0] instanceof Integer))
 			throw new IllegalArgumentException(
-					"The first argument has to be an error number (int)");
-		
-		for (int i = 1; i < arguments.length; i++)
-			parameters.put(UploadResponse.paramNames[i], arguments[i]);
-
+			"The first argument has to be an error number (int)");
+			
+		System.arraycopy(arguments, 0, parameters, 0, arguments.length);
 	}
 
 	public void setCustomMessage(final String customMassage) {
 		if (Utils.isNotEmpty(customMassage)) {
-			if (parameters.size() == 1) {
-				parameters.put(UploadResponse.paramNames[1], null);
-				parameters.put(UploadResponse.paramNames[2], null);
+			if (parameters.length == 1) {
+				Object errorNumber = parameters[0];
+				parameters = new Object[4];
+				parameters[0] = errorNumber;
+				parameters[1] = null;
+				parameters[2] = null;
 			}
-			parameters.put(UploadResponse.paramNames[3], customMassage);
+			parameters[3] = customMassage;
 		}
 	}
@@ -61,5 +56,5 @@
 		sb.append("window.parent.OnUploadCompleted(");
 
-		for (Object parameter : parameters.values()) {
+		for (Object parameter : parameters) {
 			if (parameter instanceof Integer) {
 				sb.append(parameter);
