--- includes/form.inc	2011-01-10 18:23:51.612306845 +0100
+++ includes/form-required-select.inc	2011-01-11 09:34:21.337252662 +0100
@@ -877,6 +877,17 @@ function form_builder($form_id, $form, &
     $form += $info;
   }
 
+  // If there is a select element on the page which does not have the default
+  // value set and the element is set to required, the form will default use
+  // the first item in the #options array. This code prevent from this 
+  // situation.
+  if ($form['#type'] == 'select' && $form['#required'] && !$form['#default_value']) {
+    $form['#options'] = array_reverse($form['#options'], TRUE);
+    $form['#options'][''] = t('<select>');
+    $form['#options'] = array_reverse($form['#options'], TRUE);
+    $form['#default_value'] = '';
+  }
+
   if (isset($form['#type']) && $form['#type'] == 'form') {
     $cache = NULL;
     $complete_form = $form;
