summaryrefslogtreecommitdiffstats
path: root/src/Components/Expression.php
diff options
context:
space:
mode:
authorMichal Čihař <michal@cihar.com>2016-04-06 15:40:09 +0200
committerMichal Čihař <michal@cihar.com>2016-04-06 15:40:09 +0200
commite43ce956a1419fe16ea677b226be51f610163a42 (patch)
tree85b842aaf344fc309758693bc45d48e0d8f4dd85 /src/Components/Expression.php
parenta6ddea685a42784a21019449d1b9535dca45135c (diff)
downloadsql-parser-e43ce956a1419fe16ea677b226be51f610163a42.zip
sql-parser-e43ce956a1419fe16ea677b226be51f610163a42.tar.gz
sql-parser-e43ce956a1419fe16ea677b226be51f610163a42.tar.bz2
Do not consume closing bracket if we didn't consume opening one
See also https://github.com/phpmyadmin/phpmyadmin/issues/12165 Signed-off-by: Michal Čihař <michal@cihar.com>
Diffstat (limited to 'src/Components/Expression.php')
-rw-r--r--src/Components/Expression.php3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/Components/Expression.php b/src/Components/Expression.php
index 8d6471c..8a83584 100644
--- a/src/Components/Expression.php
+++ b/src/Components/Expression.php
@@ -293,6 +293,9 @@ class Expression extends Component
) {
$ret->function = $prev[1]->value;
}
+ } elseif ($token->value === ')' && $brackets == 0) {
+ // Not our bracket
+ break;
} elseif ($token->value === ')') {
--$brackets;
if ($brackets === 0) {