diff --git a/includes/database/database.inc b/includes/database/database.inc index 98f3497aec61371019cba112eb53d96b8067ba46..53732a982c6b5b374e7dca3de8e23150a7e2c20c 100644 --- a/includes/database/database.inc +++ b/includes/database/database.inc @@ -455,11 +455,17 @@ public function prefixTables($sql) { */ public function prepareQuery($query, $cache = TRUE) { $query = $this->prefixTables($query); - if (empty($this->preparedStatements[$query])) { + if (isset($this->preparedStatements[$query])) { + $stmt = $this->preparedStatements[$query]; + } + else { // Call PDO::prepare. - $this->preparedStatements[$query] = parent::prepare($query); + $stmt = parent::prepare($query); + if ($cache) { + $this->preparedStatements[$query] = $stmt; + } } - return $this->preparedStatements[$query]; + return $stmt; } /**