Index: money.module
===================================================================
--- money.module	(revision 42)
+++ money.module	(working copy)
@@ -264,7 +264,7 @@
   $field_key = $element['#columns'][1];
   $element[$field_key] = array(
     '#type' => 'select',
-    '#default_value' => (isset($element['#value'][$field_key]) ? $element['#value'][$field_key] : array()),
+    '#default_value' => (isset($element['#value'][$field_key]) ? $element['#value'][$field_key] : $field['widget']['default_value'][0][$field_key] ),
     '#options' => money_get_widget_currencies($field),
     // The following values were set by the content module and need
     // to be passed down to the nested element.
@@ -324,7 +324,7 @@
         $errors[] = t('%name: The currency %currency is not allowed.', array('%name' => $widget_label, '%currency' => $currency));
       }
     }
-    else if (!is_numeric($amount) && $amount_required) {
+    else if (!is_numeric($amount) && !empty($amount) && $amount_required) {
       $errors[] = t('%name: A valid amount is required when a currency is specified.', array('%name' => $widget_label));
     }
   }
