diff --git a/modules/file/file.field.inc b/modules/file/file.field.inc
index 2af3cb6..a51fc82 100644
--- a/modules/file/file.field.inc
+++ b/modules/file/file.field.inc
@@ -198,8 +198,8 @@ function file_field_load($entity_type, $entities, $field, $instances, $langcode,
 function file_field_prepare_view($entity_type, $entities, $field, $instances, $langcode, &$items) {
   // Remove files specified to not be displayed.
   foreach ($entities as $id => $entity) {
-    foreach ($items[$id] as $delta => $item) {
-      if (!file_field_displayed($item, $field)) {
+    foreach (array_keys($items[$id]) as $delta) {
+      if (!file_field_displayed($items[$id][$delta], $field)) {
         unset($items[$id][$delta]);
       }
     }
