The branch, master has been updated via 1f54fa2f1617b825c9b12b0f42998326e57f26d5 (commit) via 9e224184d786068317b801291c8f960109f0bdc5 (commit) via c2dd99965dea7756e9de5a58100c1c701ef83de3 (commit) from 180f0882df651c6cf338f93081d141ca84b8fde3 (commit)
- Log ----------------------------------------------------------------- commit 1f54fa2f1617b825c9b12b0f42998326e57f26d5 Merge: 180f0882df651c6cf338f93081d141ca84b8fde3 9e224184d786068317b801291c8f960109f0bdc5 Author: Rouslan Placella rouslan@placella.com Date: Tue Jun 21 20:39:53 2011 +0100
Merge branch 'QA_3_4'
-----------------------------------------------------------------------
Summary of changes: ChangeLog | 2 ++ libraries/sqlparser.lib.php | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog index e1288ee..85b66b8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -42,6 +42,8 @@ phpMyAdmin - ChangeLog - bug #3317293 [edit] Inline edit places HTML line breaks in edit area - bug #3319466 [interface] Inline query edit does not escape special characters - minor XSS (require a valid token) +- bug #3323060 [parser] SQL parser breaks AJAX requests if query has unclosed quotes +- bug #3323101 [parser] Invalid escape sequence in SQL parser
3.4.2.0 (2011-06-07) - bug #3301249 [interface] Iconic table operations does not remove inline edit label diff --git a/libraries/sqlparser.lib.php b/libraries/sqlparser.lib.php index 8005886..3deaf3a 100644 --- a/libraries/sqlparser.lib.php +++ b/libraries/sqlparser.lib.php @@ -359,7 +359,7 @@ if (! defined('PMA_MINIMUM_COMMON')) { $sql_array['raw'] = $sql; $pos = $pos_quote_separator; } - if (class_exists('PMA_Message')) { + if (class_exists('PMA_Message') && $GLOBALS['is_ajax_request'] != true) { PMA_Message::notice(__('Automatically appended backtick to the end of query!'))->display(); } } else { @@ -378,7 +378,7 @@ if (! defined('PMA_MINIMUM_COMMON')) {
// Checks for MySQL escaping using a \ // And checks for ANSI escaping using the $quotetype character - if (($pos < $len) && PMA_STR_charIsEscaped($sql, $pos)) { + if (($pos < $len) && PMA_STR_charIsEscaped($sql, $pos) && $c != '`') { $pos ++; continue; } elseif (($pos + 1 < $len) && ($GLOBALS['PMA_substr']($sql, $pos, 1) == $quotetype) && ($GLOBALS['PMA_substr']($sql, $pos + 1, 1) == $quotetype)) {
hooks/post-receive