Index: includes/calendar_view_plugin_style.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/calendar/includes/Attic/calendar_view_plugin_style.inc,v
retrieving revision 1.1.2.13
diff -u -p -r1.1.2.13 calendar_view_plugin_style.inc
--- includes/calendar_view_plugin_style.inc	20 Nov 2008 12:29:14 -0000	1.1.2.13
+++ includes/calendar_view_plugin_style.inc	24 Nov 2008 22:26:50 -0000
@@ -116,7 +116,7 @@ class calendar_view_plugin_style extends
     $form['truncated_fields'] = array(
       '#title' => t('Truncated fields'),
       '#type' => in_array($calendar_type, array('month', 'week', 'day')) ? 'checkboxes' : 'value',
-      '#options' => $field_options + $date_field_options,
+      '#options' => $this->merge_arrays($field_options, $date_field_options),
       '#default_value' => $this->options['truncated_fields'],
       '#multiple' => TRUE,
       '#description' => t("Fields that should be truncated to fit in the calendar cell. For instance, change the title from 'Very Very Very Long Name' to something like 'Very Very...'."),
@@ -136,6 +136,28 @@ class calendar_view_plugin_style extends
     }
   }
 
+  /**
+   * Merges the specified arrays together.  If either of the arguments is not
+   * initialized the result will still be valid.
+   *
+   * @param $a1
+   *   An array.
+   * @param $a2
+   *   An array.
+   * @return a valid array even if one or both of the specified arrays is
+   * uninitialized.
+   */
+  private function merge_arrays($array1, $array2) {
+    $result = array();
+    if (is_array($array1)) {
+      $result += $array1;
+    }
+    if (is_array($array2)) {
+      $result += $array2;
+    }
+    return $result;
+  }
+
   function options_submit($form, &$form_state) {
     $form_state['values']['style_options']['truncated_fields'] = array_filter($form_state['values']['style_options']['truncated_fields']);
   }
