Index: filefield.module
===================================================================
--- filefield.module	(revision 90)
+++ filefield.module	(working copy)
@@ -318,6 +318,9 @@
     // override core since it excludes uid 1 on the extension check.. I only want to
     // excuse uid 1 of quota requirements. - dopry.
     'filefield_validate_extensions' => array($field['widget']['file_extensions']),
+    // *Special* validator used to associate field widget settings with a file.
+    // Used to pass thumbnail size information currently.
+    'filefield_validate_associate_field' => array($field),
   );
   return $validators;
 }
@@ -665,3 +668,19 @@
 function filefield_validate_is_image_help($arguments = null) {
   return t('Must be a JPEG, PNG or GIF image');
 }
+
+/*
+ * *Special* validator used to associate field widget settings with a file.
+ */
+function filefield_validate_associate_field(&$file, $field) {
+  
+  // Add thumbnail information for image previews if available
+  if (isset($field['widget']['thumb_resolution'])) {
+    $file->thumb_resolution = $field['widget']['thumb_resolution'];
+  }
+  return array();
+}
+
+function filefield_validate_associate_field_help() {
+  return FALSE;
+}
Index: filefield_widget.inc
===================================================================
--- filefield_widget.inc	(revision 90)
+++ filefield_widget.inc	(working copy)
@@ -239,7 +239,7 @@
     '#name' => 'files['. $element['#field_name'] .'_'. $element['#delta'] .']',
     '#type' => 'file',
     '#title' => t('New Upload'),
-    '#description' => implode('<br />', $desc),
+    '#description' => implode('<br />', array_filter($desc)),
     '#attributes' => array(
       'accept' => implode(',', array_filter(explode(' ', $field['widget']['file_extensions']))),
     )
