diff --git a/media.fields.inc b/media.fields.inc index 021f4fe..022e188 100644 --- a/media.fields.inc +++ b/media.fields.inc @@ -118,7 +118,6 @@ function media_field_prepare_view($entity_type, $entities, $field, $instances, $ } } } - // Load the entities in a single operation. $media_entities = media_load_multiple(array_values($fids)); @@ -126,7 +125,10 @@ function media_field_prepare_view($entity_type, $entities, $field, $instances, $ foreach ($entities as $id => $entity) { foreach ($items[$id] as $delta => $item) { if (is_array($item) && !empty($item['fid'])) { - $items[$id][$delta] = $media_entities[$item['fid']]; + $item['data'] = unserialize($item['data']); + + $items[$id][$delta] = clone ($media_entities[$item['fid']]); + $items[$id][$delta]->field = $item; } } } @@ -169,8 +171,6 @@ function media_field_formatter_view($entity_type, $entity, $field, $instance, $l field_attach_prepare_view('media', $media_items, $display['type']); entity_prepare_view('media', $media_items); - - foreach ($items as $delta => $item) { // @TODO: // This works fine for Media styles, just not the default file types.