diff --git a/Swat/SwatCheckboxEntryList.php b/Swat/SwatCheckboxEntryList.php
index <HASH>..<HASH> 100644
--- a/Swat/SwatCheckboxEntryList.php
+++ b/Swat/SwatCheckboxEntryList.php
@@ -134,7 +134,7 @@ class SwatCheckboxEntryList extends SwatCheckboxList
 			$input_tag->removeAttribute('checked');
 			$input_tag->name = $this->id.'['.$key.']';
 
-			if (in_array($option->value, $this->values))
+			if (array_key_exists($key ,$this->values))
 				$input_tag->checked = 'checked';
 
 			$input_tag->id = $this->id.'_'.$checkbox_id;
@@ -187,7 +187,7 @@ class SwatCheckboxEntryList extends SwatCheckboxList
 			$checkbox_id = $key.'_'.$value;
 			$widget = $this->getEntryWidget($checkbox_id);
 			$widget->process();
-			$this->entry_values[$value] = $widget->value;
+			$this->entry_values[] = $widget->value;
 		}
 	}
Ticket #<I>, problems occured when two options with the same value were added to the checkbox entry list widget, now when the form is submitted the array keys of the options and those of the values are compared instead of the values names. This allows that right entries to remain checked and other entries with the same value not to become suddenly checked. Also the array of entry_values is now indexed by number and not by values, this prevents two widgets with the same value having only one entry in the entry_values array.


svn commit r<I>