quick fix for issue #3383711
Signed-off-by: Sven Strickroth <email@cs-ware.de>
This commit is contained in:

committed by
Madhura Jayaratne

parent
e466dec53b
commit
7909da2ea0
@@ -766,8 +766,10 @@ function PMA_displayTableHeaders(&$is_display, &$fields_meta, $fields_cnt = 0, $
|
|||||||
// the orgname member does not exist for all MySQL versions
|
// the orgname member does not exist for all MySQL versions
|
||||||
// but if found, it's the one on which to sort
|
// but if found, it's the one on which to sort
|
||||||
$name_to_use_in_sort = $fields_meta[$i]->name;
|
$name_to_use_in_sort = $fields_meta[$i]->name;
|
||||||
|
$is_orgname = false;
|
||||||
if (isset($fields_meta[$i]->orgname) && strlen($fields_meta[$i]->orgname)) {
|
if (isset($fields_meta[$i]->orgname) && strlen($fields_meta[$i]->orgname)) {
|
||||||
$name_to_use_in_sort = $fields_meta[$i]->orgname;
|
$name_to_use_in_sort = $fields_meta[$i]->orgname;
|
||||||
|
$is_orgname = true;
|
||||||
}
|
}
|
||||||
// $name_to_use_in_sort might contain a space due to
|
// $name_to_use_in_sort might contain a space due to
|
||||||
// formatting of function expressions like "COUNT(name )"
|
// formatting of function expressions like "COUNT(name )"
|
||||||
@@ -794,12 +796,14 @@ function PMA_displayTableHeaders(&$is_display, &$fields_meta, $fields_cnt = 0, $
|
|||||||
// 2.1.3 Check the field name for a bracket.
|
// 2.1.3 Check the field name for a bracket.
|
||||||
// If it contains one, it's probably a function column
|
// If it contains one, it's probably a function column
|
||||||
// like 'COUNT(`field`)'
|
// like 'COUNT(`field`)'
|
||||||
if (strpos($name_to_use_in_sort, '(') !== false) {
|
// This check is not sufficient, see bug #3383711, it still might be a column name of a view, check is_orgname
|
||||||
|
if (strpos($name_to_use_in_sort, '(') !== false && !$is_orgname) {
|
||||||
$sort_order = ' ORDER BY ' . $name_to_use_in_sort . ' ';
|
$sort_order = ' ORDER BY ' . $name_to_use_in_sort . ' ';
|
||||||
} else {
|
} else {
|
||||||
$sort_order = ' ORDER BY ' . $sort_tbl . PMA_backquote($name_to_use_in_sort) . ' ';
|
$sort_order = ' ORDER BY ' . $sort_tbl . PMA_backquote($name_to_use_in_sort) . ' ';
|
||||||
}
|
}
|
||||||
unset($name_to_use_in_sort);
|
unset($name_to_use_in_sort);
|
||||||
|
unset($is_orgname);
|
||||||
|
|
||||||
// 2.1.4 Do define the sorting URL
|
// 2.1.4 Do define the sorting URL
|
||||||
if (! $is_in_sort) {
|
if (! $is_in_sort) {
|
||||||
|
Reference in New Issue
Block a user