diff options
Diffstat (limited to 'phpBB/phpbb/db/driver/mssql.php')
-rw-r--r-- | phpBB/phpbb/db/driver/mssql.php | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/phpBB/phpbb/db/driver/mssql.php b/phpBB/phpbb/db/driver/mssql.php index 14a9fd938c..0809703b48 100644 --- a/phpBB/phpbb/db/driver/mssql.php +++ b/phpBB/phpbb/db/driver/mssql.php @@ -163,7 +163,7 @@ class mssql extends \phpbb\db\driver\driver $this->open_queries[(int) $this->query_result] = $this->query_result; $this->query_result = $cache->sql_save($this, $query, $this->query_result, $cache_ttl); } - else if (strpos($query, 'SELECT') === 0 && $this->query_result) + else if (strpos($query, 'SELECT') === 0 && $this->query_result !== true) { $this->open_queries[(int) $this->query_result] = $this->query_result; } @@ -238,7 +238,7 @@ class mssql extends \phpbb\db\driver\driver return $cache->sql_fetchrow($query_id); } - if (!$query_id) + if (!$query_id || $query_id === true) { return false; } @@ -269,6 +269,11 @@ class mssql extends \phpbb\db\driver\driver $query_id = $this->query_result; } + if ($query_id === true) + { + return false; + } + if ($cache && $cache->sql_exists($query_id)) { return $cache->sql_rowseek($rownum, $query_id); @@ -308,6 +313,11 @@ class mssql extends \phpbb\db\driver\driver $query_id = $this->query_result; } + if ($query_id === true) + { + return false; + } + if ($cache && !is_object($query_id) && $cache->sql_exists($query_id)) { return $cache->sql_freeresult($query_id); |