bug #1832285 mysql DBI does not handle when control user connection fails

This commit is contained in:
Marc Delisle
2007-12-09 13:06:21 +00:00
parent 8be5ccc592
commit c7ba1bb032
2 changed files with 9 additions and 3 deletions

View File

@@ -1037,8 +1037,14 @@ function PMA_DBI_get_warnings($link = null)
* @return integer $is_superuser
*/
function PMA_isSuperuser() {
return PMA_DBI_try_query('SELECT COUNT(*) FROM mysql.user',
$GLOBALS['userlink'], PMA_DBI_QUERY_STORE);
// with mysql extension, when connection failed we don't have
// a $userlink
if (isset($GLOBALS['userlink'])) {
return PMA_DBI_try_query('SELECT COUNT(*) FROM mysql.user',
$GLOBALS['userlink'], PMA_DBI_QUERY_STORE);
} else {
return false;
}
}

View File

@@ -76,7 +76,7 @@ function PMA_DBI_connect($user, $password, $is_controluser = false)
$link = PMA_DBI_real_connect($cfg['Server']['host'] . $server_port . $server_socket, $user, '', empty($client_flags) ? NULL : $client_flags);
}
if (empty($link) && ! $is_controluser) {
if (empty($link)) {
if ($is_controluser) {
trigger_error($GLOBALS['strControluserFailed'], E_USER_WARNING);
return false;