From a075258a59523079e7d114d8514b442297d11172 Mon Sep 17 00:00:00 2001 From: Matti Tahvonen Date: Wed, 18 Mar 2009 12:38:06 +0000 Subject: [PATCH] fixes #2690, switched comma to ascii control character as an array separator in variable posts svn changeset:7100/svn branch:6.0 --- .../toolkit/terminal/gwt/client/ApplicationConnection.java | 4 +++- .../toolkit/terminal/gwt/server/CommunicationManager.java | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java b/src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java index 4c06ad6aaa..df0f9f5519 100755 --- a/src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java @@ -60,6 +60,8 @@ public class ApplicationConnection { public static final String VAR_BURST_SEPARATOR = "\u001d"; + public static final String VAR_ARRAYITEM_SEPARATOR = "\u001c"; + public static final String UIDL_SECURITY_HEADER = "com.itmill.seckey"; public static final String PARAM_UNLOADBURST = "onunloadburst"; @@ -976,7 +978,7 @@ public class ApplicationConnection { final StringBuffer buf = new StringBuffer(); for (int i = 0; i < values.length; i++) { if (i > 0) { - buf.append(","); + buf.append(VAR_ARRAYITEM_SEPARATOR); } buf.append(values[i].toString()); } diff --git a/src/com/itmill/toolkit/terminal/gwt/server/CommunicationManager.java b/src/com/itmill/toolkit/terminal/gwt/server/CommunicationManager.java index ba09313413..7510c401ef 100644 --- a/src/com/itmill/toolkit/terminal/gwt/server/CommunicationManager.java +++ b/src/com/itmill/toolkit/terminal/gwt/server/CommunicationManager.java @@ -86,6 +86,8 @@ public class CommunicationManager implements Paintable.RepaintRequestListener { public static final String VAR_BURST_SEPARATOR = "\u001d"; + public static final String VAR_ARRAYITEM_SEPARATOR = "\u001c"; + private final HashSet currentlyOpenWindowsInClient = new HashSet(); private static final int MAX_BUFFER_SIZE = 64 * 1024; @@ -819,7 +821,7 @@ public class CommunicationManager implements Paintable.RepaintRequestListener { Object val = null; switch (variableType) { case 'a': - val = strValue.split(","); + val = strValue.split(VAR_ARRAYITEM_SEPARATOR); break; case 's': val = strValue; -- 2.39.5