diff options
author | Sergei Golubchik <sergii@pisem.net> | 2012-06-01 23:45:54 +0200 |
---|---|---|
committer | Sergei Golubchik <sergii@pisem.net> | 2012-06-01 23:45:54 +0200 |
commit | 41d860ef53e4461fa665da063fa34efb947ec4cd (patch) | |
tree | 31d488b5e5367a68fed44fd48582c2a53924e227 /client | |
parent | f45784c8503d0bbe77f3aec351fc87ff536b19be (diff) | |
parent | 34f2f8ea41726d98e50752ff3453ebde70912c35 (diff) | |
download | mariadb-git-41d860ef53e4461fa665da063fa34efb947ec4cd.tar.gz |
5.1 merge
Diffstat (limited to 'client')
-rw-r--r-- | client/mysqltest.cc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/client/mysqltest.cc b/client/mysqltest.cc index 6cf9918e829..00ed5f700b2 100644 --- a/client/mysqltest.cc +++ b/client/mysqltest.cc @@ -8330,8 +8330,12 @@ int main(int argc, char **argv) command->abort_on_error= (command->expected_errors.count == 0 && abort_on_error); - /* delimiter needs to be executed so we can continue to parse */ - ok_to_do= cur_block->ok || command->type == Q_DELIMITER; + /* + some commmands need to be executed or at least parsed unconditionally, + because they change the grammar. + */ + ok_to_do= cur_block->ok || command->type == Q_DELIMITER + || command->type == Q_PERL; /* Some commands need to be "done" the first time if they may get re-iterated over in a true context. This can only happen if there's @@ -8342,8 +8346,7 @@ int main(int argc, char **argv) if (command->type == Q_SOURCE || command->type == Q_ERROR || command->type == Q_WRITE_FILE || - command->type == Q_APPEND_FILE || - command->type == Q_PERL) + command->type == Q_APPEND_FILE) { for (struct st_block *stb= cur_block-1; stb >= block_stack; stb--) { |