Author: ivaynberg
Date: Sun Jan 13 22:40:58 2008
New Revision: 611726

URL: http://svn.apache.org/viewvc?rev=611726&view=rev
Log:
WICKET-1270 be a bit more defensive

Modified:
    
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java

Modified: 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java?rev=611726&r1=611725&r2=611726&view=diff
==============================================================================
--- 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java
 (original)
+++ 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java
 Sun Jan 13 22:40:58 2008
@@ -124,7 +124,7 @@
         *      List,IChoiceRenderer)
         */
        public ListMultipleChoice(final String id, IModel object, final List 
choices,
-                       final IChoiceRenderer renderer)
+               final IChoiceRenderer renderer)
        {
                super(id, object, choices, renderer);
        }
@@ -188,8 +188,8 @@
                if (modelObject != null && !(modelObject instanceof Collection))
                {
                        throw new WicketRuntimeException(
-                                       "Model object for a ListMultipleChoice 
must be a Collection (found " +
-                                                       modelObject.getClass() 
+ ")");
+                               "Model object for a ListMultipleChoice must be 
a Collection (found " +
+                                       modelObject.getClass() + ")");
                }
                final Collection selectedValues = (Collection)modelObject;
                final AppendingStringBuffer buffer = new 
AppendingStringBuffer();
@@ -217,8 +217,7 @@
                if (selected != null)
                {
                        // Loop through ids
-                       for (final StringTokenizer tokenizer = new 
StringTokenizer(selected, VALUE_SEPARATOR); tokenizer
-                                       .hasMoreTokens();)
+                       for (final StringTokenizer tokenizer = new 
StringTokenizer(selected, VALUE_SEPARATOR); tokenizer.hasMoreTokens();)
                        {
                                final String id = tokenizer.nextToken();
                                if 
(id.equals(getChoiceRenderer().getIdValue(choice, index)))
@@ -313,7 +312,11 @@
                {
                        modelChanging();
                        selectedValues.clear();
-                       selectedValues.addAll((Collection)getConvertedInput());
+                       final Collection converted = 
(Collection)getConvertedInput();
+                       if (converted != null)
+                       {
+                               selectedValues.addAll(converted);
+                       }
                        modelChanged();
                        getModel().setObject(selectedValues);
                }


Reply via email to