aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorArtur Signell <artur.signell@itmill.com>2012-07-31 10:43:20 +0000
committerArtur Signell <artur.signell@itmill.com>2012-07-31 10:43:20 +0000
commit4c9fedc2636d21afe6c6df47d244688054885c03 (patch)
tree0585233b19e8b9e6ca990f03f0d1914e7953b683 /src
parentf6d79ce3220b01531a3d84ec1cf9906591c6f8e0 (diff)
downloadvaadin-framework-4c9fedc2636d21afe6c6df47d244688054885c03.tar.gz
vaadin-framework-4c9fedc2636d21afe6c6df47d244688054885c03.zip
Correctly decode maps and arrays with "" as the last value (#9188)
svn changeset:24038/svn branch:6.8
Diffstat (limited to 'src')
-rw-r--r--src/com/vaadin/terminal/gwt/server/AbstractCommunicationManager.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/com/vaadin/terminal/gwt/server/AbstractCommunicationManager.java b/src/com/vaadin/terminal/gwt/server/AbstractCommunicationManager.java
index ae2cacdd38..827785bd33 100644
--- a/src/com/vaadin/terminal/gwt/server/AbstractCommunicationManager.java
+++ b/src/com/vaadin/terminal/gwt/server/AbstractCommunicationManager.java
@@ -1609,8 +1609,8 @@ public abstract class AbstractCommunicationManager implements
}
private Object convertMap(String strValue) {
- String[] parts = strValue
- .split(String.valueOf(VAR_ARRAYITEM_SEPARATOR));
+ String[] parts = strValue.split(
+ String.valueOf(VAR_ARRAYITEM_SEPARATOR), -1);
HashMap<String, Object> map = new HashMap<String, Object>();
for (int i = 0; i < parts.length; i += 2) {
String key = parts[i];
@@ -1650,7 +1650,8 @@ public abstract class AbstractCommunicationManager implements
}
private Object convertArray(String strValue) {
- String[] val = strValue.split(String.valueOf(VAR_ARRAYITEM_SEPARATOR));
+ String[] val = strValue.split(String.valueOf(VAR_ARRAYITEM_SEPARATOR),
+ -1);
if (val.length == 0 || (val.length == 1 && val[0].length() == 0)) {
return new Object[0];
}