Index: filefield.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/filefield/filefield.module,v retrieving revision 1.214 diff -u -r1.214 filefield.module --- filefield.module 29 Apr 2010 01:37:05 -0000 1.214 +++ filefield.module 29 Apr 2010 01:56:31 -0000 @@ -165,7 +165,7 @@ // denied for ALL nodes containing the file, deny the download as well. // Node access checks also include checking for 'access content'. $nodes = array(); - $denied = FALSE; + $denied = TRUE; foreach ($cck_files as $field_name => $field_files) { foreach ($field_files as $revision_id => $content) { // Checking separately for each revision is probably not the best idea - @@ -174,15 +174,15 @@ if (isset($nodes[$content['nid']])) { continue; // Don't check the same node twice. } - if ($denied == FALSE && ($node = node_load($content['nid'])) && (node_access('view', $node) == FALSE || filefield_view_access($field_name, $node) == FALSE)) { - // You don't have permission to view the node this file is attached to. - $denied = TRUE; + if (($node = node_load($content['nid'])) && (node_access('view', $node) || filefield_view_access($field_name, $node))) { + $denied = FALSE; } $nodes[$content['nid']] = $node; } - if ($denied) { - return -1; - } + } + + if ($cck_files && $denied) { + return -1; } // Access is granted.