mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-27 21:58:52 +00:00
Merge pull request #2634 from Nicofuma/ticket/12756
[ticket/12756] Fix mysqli_fetch_assoc on hhvm * Nicofuma/ticket/12756: [ticket/12756] Fix mysqli_fetch_assoc on hhvm
This commit is contained in:
commit
566615fa31
1 changed files with 26 additions and 13 deletions
|
@ -71,10 +71,17 @@ class mysqli extends \phpbb\db\driver\mysql_base
|
|||
if (version_compare($this->sql_server_info(true), '5.0.2', '>='))
|
||||
{
|
||||
$result = @mysqli_query($this->db_connect_id, 'SELECT @@session.sql_mode AS sql_mode');
|
||||
$row = @mysqli_fetch_assoc($result);
|
||||
@mysqli_free_result($result);
|
||||
if ($result !== null)
|
||||
{
|
||||
$row = @mysqli_fetch_assoc($result);
|
||||
|
||||
$modes = array_map('trim', explode(',', $row['sql_mode']));
|
||||
$modes = array_map('trim', explode(',', $row['sql_mode']));
|
||||
}
|
||||
else
|
||||
{
|
||||
$modes = array();
|
||||
}
|
||||
@mysqli_free_result($result);
|
||||
|
||||
// TRADITIONAL includes STRICT_ALL_TABLES and STRICT_TRANS_TABLES
|
||||
if (!in_array('TRADITIONAL', $modes))
|
||||
|
@ -109,15 +116,18 @@ class mysqli extends \phpbb\db\driver\mysql_base
|
|||
if (!$use_cache || empty($cache) || ($this->sql_server_version = $cache->get('mysqli_version')) === false)
|
||||
{
|
||||
$result = @mysqli_query($this->db_connect_id, 'SELECT VERSION() AS version');
|
||||
$row = @mysqli_fetch_assoc($result);
|
||||
@mysqli_free_result($result);
|
||||
|
||||
$this->sql_server_version = $row['version'];
|
||||
|
||||
if (!empty($cache) && $use_cache)
|
||||
if ($result !== null)
|
||||
{
|
||||
$cache->put('mysqli_version', $this->sql_server_version);
|
||||
$row = @mysqli_fetch_assoc($result);
|
||||
|
||||
$this->sql_server_version = $row['version'];
|
||||
|
||||
if (!empty($cache) && $use_cache)
|
||||
{
|
||||
$cache->put('mysqli_version', $this->sql_server_version);
|
||||
}
|
||||
}
|
||||
@mysqli_free_result($result);
|
||||
}
|
||||
|
||||
return ($raw) ? $this->sql_server_version : 'MySQL(i) ' . $this->sql_server_version;
|
||||
|
@ -224,7 +234,7 @@ class mysqli extends \phpbb\db\driver\mysql_base
|
|||
return $cache->sql_fetchrow($query_id);
|
||||
}
|
||||
|
||||
if ($query_id !== false)
|
||||
if ($query_id !== false && $query_id !== null)
|
||||
{
|
||||
$result = @mysqli_fetch_assoc($query_id);
|
||||
return $result !== null ? $result : false;
|
||||
|
@ -434,9 +444,12 @@ class mysqli extends \phpbb\db\driver\mysql_base
|
|||
$endtime = $endtime[0] + $endtime[1];
|
||||
|
||||
$result = @mysqli_query($this->db_connect_id, $query);
|
||||
while ($void = @mysqli_fetch_assoc($result))
|
||||
if ($result !== null)
|
||||
{
|
||||
// Take the time spent on parsing rows into account
|
||||
while ($void = @mysqli_fetch_assoc($result))
|
||||
{
|
||||
// Take the time spent on parsing rows into account
|
||||
}
|
||||
}
|
||||
@mysqli_free_result($result);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue