--- modules/node.module.orig 2006-11-14 09:31:56.000000000 -0500 +++ modules/node.module 2006-11-14 09:42:48.000000000 -0500 @@ -345,11 +345,12 @@ function node_load($param = array(), $re $nodes = array(); } + $cachable = FALSE; $arguments = array(); if (is_numeric($param)) { $cachable = $revision == NULL; if ($cachable && isset($nodes[$param])) { - return $nodes[$param]; + return is_object($nodes[$param]) ? drupal_clone($nodes[$param]) : $nodes[$param]; } $cond = 'n.nid = %d'; $arguments[] = $param; @@ -390,7 +391,7 @@ function node_load($param = array(), $re } if ($cachable) { - $nodes[$param] = $node; + $nodes[$param] = is_object($node) ? drupal_clone($node) : $node; } return $node;