--- cck_field_perms_old.module	2007-05-11 05:14:04.000000000 +0800
+++ cck_field_perms.module	2007-06-22 22:52:20.343750000 +0800
@@ -76,9 +76,17 @@
         if ($disallowed_fields) { 
           foreach ($disallowed_fields[$type] as $disallowed_field => $value ) {
             if ($value == 0) {continue; }
-              if (!(user_access(_cfp_content_to_readable($type, $disallowed_field, "view")))) {     
+            if ($node->build_mode == 'update index anonymous-only') {
+              if (!(user_access(_cfp_content_to_readable($type, $disallowed_field, "view"),0))) {
                 $node->$disallowed_field['#access'] = false;
-                $node->content[$disallowed_field]['#access'] = false;                   
+                $node->content[$disallowed_field]['#access'] = false;
+              }
+            }
+            else {
+              if (!(user_access(_cfp_content_to_readable($type, $disallowed_field, "view")))) {
+                $node->$disallowed_field['#access'] = false;
+                $node->content[$disallowed_field]['#access'] = false;
+              }
             }   
           }
         }   
