Index: modules/field/modules/options/options.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/field/modules/options/options.module,v
retrieving revision 1.8
diff -u -p -r1.8 options.module
--- modules/field/modules/options/options.module	1 Aug 2009 06:03:12 -0000	1.8
+++ modules/field/modules/options/options.module	26 Aug 2009 12:57:59 -0000
@@ -135,11 +135,17 @@ function options_buttons_elements_proces
   $options = options_options($field, $instance);
   $multiple = isset($element['#multiple']) ? $element['#multiple'] : $field['cardinality'] > 1 || $field['cardinality'] == FIELD_CARDINALITY_UNLIMITED;
 
+  $keys = $element['#value'][$field_key];
+  // If non-multiple (radios) $keys holds an integer value.
+  if (!is_array($keys)) {
+    $keys = array($keys);
+  }
+
   $value = array();
-  foreach ($element['#value'][$field_key] as $key) {
+  foreach ($keys as $key) {
     // Multiple (checkboxes) need the default value in the form of an array.
     if ($multiple) {
-      $value[$key] = 1;
+      $value[] = $key;
     }
     // Non-multiple (radios) need single default value.
     else {
