--- mvf.module	2010-10-23 20:19:14.000000000 +0400
+++ mvf.module_new	2011-03-02 17:33:34.000000000 +0300
@@ -443,10 +443,13 @@
   }
 
   // Unit uses a select list element.
+  $default_unit = null;
+  $units = mvf_get_widget_units($field, $default_unit);
+
   $element[$unit_field] = array(
     '#type' => 'select',
-    '#default_value' => (isset($element['#value'][$unit_field]) ? $element['#value'][$unit_field] : array()),
-    '#options' => mvf_get_widget_units($field),
+    '#default_value' => (isset($element['#value'][$unit_field]) ? $element['#value'][$unit_field] : $default_unit),
+    '#options' => $units,
     // The following values were set by the content module and need
     // to be passed down to the nested element.
     '#required' => $element['#required'],
@@ -594,7 +597,7 @@
 /**
  * Build unit options for the given field/widget.
  */
-function mvf_get_widget_units($field) {
+function mvf_get_widget_units($field, &$default = null) {
   // Currently implemented modes: short, full. See mvf_widget_settings().
   $mode = $field['widget']['unit_select_mode'];
 
@@ -635,6 +638,11 @@
   // When no unit has been specified in widget settings we allow them all.
   $allowed_units = empty($allowed_units) ? $site_enabled_units : array_intersect_key($site_enabled_units, $allowed_units);
   
+  if(count($allowed_units) == 1) {
+    $unit_keys = array_keys($allowed_units);
+    $default = $unit_keys[0];
+  }
+  
   // When field is not required, an additional empty unit is pushed on top of the resulting list.
   if (!$field['required']) {
     $allowed_units = array('' => ($mode == 'short' ? '---' : t('-- Select unit --'))) + $allowed_units;
