Proper initialization of $_message variable according to value of $result
While calling getDisplay, $_message should be an instance of PMA\libraries\Message. Fix #12650 Also, spaces at the beginning of a table name are allowed if used inside backquotes. Signed-off-by: Deven Bansod <devenbansod.bits@gmail.com>
This commit is contained in:
parent
9de117ffed
commit
1eac9c5ec2
@ -1245,17 +1245,22 @@ class Table
|
||||
* checks if given name is a valid table name,
|
||||
* currently if not empty, trailing spaces, '.', '/' and '\'
|
||||
*
|
||||
* @param string $table_name name to check
|
||||
* @param string $table_name name to check
|
||||
* @param boolean $is_backquoted whether this name is used inside backquotes or not
|
||||
*
|
||||
* @todo add check for valid chars in filename on current system/os
|
||||
* @see https://dev.mysql.com/doc/refman/5.0/en/legal-names.html
|
||||
*
|
||||
* @return boolean whether the string is valid or not
|
||||
*/
|
||||
static function isValidName($table_name)
|
||||
static function isValidName($table_name, $is_backquoted = false)
|
||||
{
|
||||
if ($table_name !== trim($table_name)) {
|
||||
// trailing spaces
|
||||
if ($table_name !== rtrim($table_name)) {
|
||||
// trailing spaces not allowed even in backquotes
|
||||
return false;
|
||||
}
|
||||
if (! $is_backquoted && $table_name !== trim($table_name)) {
|
||||
// spaces at the start or in between
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -1310,7 +1315,10 @@ class Table
|
||||
return true;
|
||||
}
|
||||
|
||||
if (! Table::isValidName($new_name)) {
|
||||
// Allow whitespaces (not trailing) in $new_name,
|
||||
// since we are using $backquoted in getting the fullName of table
|
||||
// below to be used in the query
|
||||
if (! Table::isValidName($new_name, true)) {
|
||||
$this->errors[] = __('Invalid table name:') . ' '
|
||||
. $new_table->getFullName();
|
||||
return false;
|
||||
|
||||
@ -226,7 +226,12 @@ if (isset($result) && empty($message_to_show)) {
|
||||
}
|
||||
exit;
|
||||
}
|
||||
} else {
|
||||
$_message = $result
|
||||
? PMA\libraries\Message::success($_message)
|
||||
: PMA\libraries\Message::error($_message);
|
||||
}
|
||||
|
||||
if (! empty($warning_messages)) {
|
||||
$_message = new PMA\libraries\Message;
|
||||
$_message->addMessages($warning_messages);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user