Closed vaadin-bot closed 12 years ago
Originally by @jdahlstrom
The analysis appears to be incorrect: if there's only a single variable, it is passed to Collections.singletonMap()
, whose return value is assigned to m
. m
then contains the single key->value pair. It doesn't seem that m
can ever be completely empty.
If this is really a core framework problem, we're going to need a minimal test case reproducing the bug. Feel free to reopen this ticket if such a test case is found.
Originally by Ville Korpi
Method handleVariableBurst(Object source, Application app, boolean success, final String burst) of com.vaadin.terminal.gwt.server.AbstractCommunicationManager class works incorrectly in the case where the "burst" variable contains only one record.
The "burst" variable is split and it's parts are saved into the variableRecords[][] array. Depending on the case when the method is called the length of the outer array of the variableRecords is sometimes 1, sometimes 2. When the length is 1 the method does not work correctly: It doesn't save values of VariableRecords[0] into the variable Map<String, Object> m . Because of that the changeVariables(source, owner, m) call in the method uses incorrect parameter "m" which has no values.
Testing and repeating the bug: For example, see Ticket #738 in the Vaadin Pro Account trac.
Client and server OS: Kubuntu 11.10 64 bit Server: Liferay 6.0 Client Browser: Firefox 10.0.2
Imported from https://dev.vaadin.com/ issue #8512