--- includes\form.inc	2008-12-03 17:32:22.000000000 +0100
+++ includes\form.new.inc	2008-12-08 14:19:25.839700000 +0100
@@ -1437,7 +1437,8 @@
     elseif (is_object($choice)) {
       $options .= form_select_options($element, $choice->option);
     }
-    else {
+    else {
+      $choice = array('#value' => $choice);
       $key = (string)$key;
       if ($value_valid && (!$value_is_array && (string)$element['#value'] === $key || ($value_is_array && in_array($key, $element['#value'])))) {
         $selected = ' selected="selected"';
@@ -1445,7 +1446,8 @@
       else {
         $selected = '';
       }
-      $options .= '<option value="' . check_plain($key) . '"' . $selected . '>' . check_plain($choice) . '</option>';
+      $attributes = (isset($choice['#attributes']) ? drupal_attributes($choice['#attributes']) : '');
+      $options .= '<option value="'. check_plain($key) .'"'. $selected . $attributes .'>'. check_plain($choice['#value']) .'</option>';
     }
   }
   return $options;
