=== modified file 'modules/node/node.module'
--- modules/node/node.module	2006-10-11 13:16:15 +0000
+++ modules/node/node.module	2006-10-14 05:54:23 +0000
@@ -2541,16 +2541,17 @@ function node_access($op, $node = NULL, 
   if ($op != 'create') {
     $node = (object)$node;
   }
+  $account = isset($uid) ? user_load(array('uid' => $uid)) : $GLOBALS['user'];
   // If the node is in a restricted format, disallow editing.
   if ($op == 'update' && !filter_access($node->format)) {
     return FALSE;
   }
 
-  if (user_access('administer nodes')) {
+  if (user_access('administer nodes', $account)) {
     return TRUE;
   }
 
-  if (!user_access('access content')) {
+  if (!user_access('access content', $account)) {
     return FALSE;
   }
 
@@ -2560,7 +2561,7 @@ function node_access($op, $node = NULL, 
   if ($module == 'node') {
     $module = 'node_content'; // Avoid function name collisions.
   }
-  $access = module_invoke($module, 'access', $op, $node);
+  $access = module_invoke($module, 'access', $op, $node, $account);
   if (!is_null($access)) {
     return $access;
   }

