diff --git filefield_sources.module filefield_sources.module
index e588b28..79550a0 100644
--- filefield_sources.module
+++ filefield_sources.module
@@ -131,12 +131,16 @@ function filefield_sources_form($widget) {
 function filefield_sources_field_process($element, $edit, &$form_state, $form) {
   static $js_added;
 
+  // If not a recognized field instance, do not process.
+  if (!isset($element['#field_name']) || !($field = content_fields($element['#field_name'], $element['#type_name']))) {
+    return;
+  }
+
   // Do all processing as needed by each source.
   $sources = filefield_sources_info();
-  $field = content_fields($element['#field_name'], $element['#type_name']);
-  $enabled_sources = (array) $field['widget']['filefield_sources'];
+  $enabled_sources = isset($field['widget']['filefield_sources']) ? $field['widget']['filefield_sources'] : array();
   foreach ($sources as $source_name => $source) {
-    if (!$enabled_sources[$source_name]) {
+    if (empty($enabled_sources[$source_name])) {
       unset($sources[$source_name]);
     }
     elseif (isset($source['process'])) {
diff --git sources/attach.inc sources/attach.inc
index d4c286b..b7c10da 100644
--- sources/attach.inc
+++ sources/attach.inc
@@ -56,7 +56,7 @@ function filefield_source_attach_settings($op, $field) {
     $return['source_attach']['filefield_source_attach_path'] = array(
       '#type' => 'textfield',
       '#title' => t('File attach path'),
-      '#default_value' => empty($field['filefield_source_attach_path']) ? 'file_attach' : $field['filefield_source_attach_path'],
+      '#default_value' => isset($field['filefield_source_attach_path']) ? $field['filefield_source_attach_path'] : 'file_attach',
       '#size' => 60,
       '#maxlength' => 128,
       '#description' => t('The directory within the <em>File attach location</em> that will contain attachable files.'),
@@ -252,7 +252,7 @@ function theme_filefield_source_attach_element($element) {
 
 function _filefield_source_attach_directory($settings, $account = NULL) {
   $account = isset($account) ? $account : $GLOBALS['user'];  
-  $path = $settings['filefield_source_attach_path'];
+  $path = isset($settings['filefield_source_attach_path']) ? $settings['filefield_source_attach_path'] : 'file_attach';
   $absolute = !empty($settings['filefield_source_attach_absolute']);
 
   // Replace user level tokens.
