Index: filefield_field.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/filefield/filefield_field.inc,v retrieving revision 1.35 diff -u -r1.35 filefield_field.inc --- filefield_field.inc 24 Apr 2010 01:48:19 -0000 1.35 +++ filefield_field.inc 24 Apr 2010 20:57:26 -0000 @@ -135,16 +135,18 @@ $items[$delta] = NULL; } else { - $item['data'] = unserialize($item['data']); + $data = unserialize($item['data']); // Temporary fix to unserialize data serialized multiple times. // See the FileField issue http://drupal.org/node/402860. // And the CCK issue http://drupal.org/node/407446. - while (!empty($item['data']) && is_string($item['data'])) { - $item['data'] = unserialize($item['data']); + while (!empty($data) && is_string($data)) { + $data = unserialize($data); } + $item['data'] = is_array($item['data']) ? array_merge($item['data'], $data) : $data; $items[$delta] = array_merge($item, $file); } } + return array($field['field_name'] => $items); }