summaryrefslogtreecommitdiff
path: root/modules/node/node.module
diff options
context:
space:
mode:
authorNeil Drumm <drumm@3064.no-reply.drupal.org>2006-11-16 08:32:19 +0000
committerNeil Drumm <drumm@3064.no-reply.drupal.org>2006-11-16 08:32:19 +0000
commit5278747df5b6b9b0a645093cd4ea08fea4a675aa (patch)
tree8a619592274a3fe34cb8137e947d99a450aa8916 /modules/node/node.module
parent30d7bd56f7b9d22bbbcdfc31bb128c460a986822 (diff)
downloadbrdo-5278747df5b6b9b0a645093cd4ea08fea4a675aa.tar.gz
brdo-5278747df5b6b9b0a645093cd4ea08fea4a675aa.tar.bz2
#86842 by pwolanin. Don't attempt to clone non-object nodes.
Diffstat (limited to 'modules/node/node.module')
-rw-r--r--modules/node/node.module5
1 files changed, 3 insertions, 2 deletions
diff --git a/modules/node/node.module b/modules/node/node.module
index de76ae1ba..c370c368a 100644
--- a/modules/node/node.module
+++ b/modules/node/node.module
@@ -479,11 +479,12 @@ function node_load($param = array(), $revision = NULL, $reset = NULL) {
$nodes = array();
}
+ $cachable = FALSE;
$arguments = array();
if (is_numeric($param)) {
$cachable = $revision == NULL;
if ($cachable && isset($nodes[$param])) {
- return drupal_clone($nodes[$param]);
+ return is_object($nodes[$param]) ? drupal_clone($nodes[$param]) : $nodes[$param];
}
$cond = 'n.nid = %d';
$arguments[] = $param;
@@ -524,7 +525,7 @@ function node_load($param = array(), $revision = NULL, $reset = NULL) {
}
if ($cachable) {
- $nodes[$param] = drupal_clone($node);
+ $nodes[$param] = is_object($node) ? drupal_clone($node) : $node;
}
return $node;