summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--client/mysqltest.c16
-rw-r--r--mysql-test/include/have_lowercase0.inc4
-rw-r--r--mysql-test/r/mysqltest.result1
-rw-r--r--mysql-test/t/mysqltest.test4
4 files changed, 22 insertions, 3 deletions
diff --git a/client/mysqltest.c b/client/mysqltest.c
index da9d165e519..212f9b64ea1 100644
--- a/client/mysqltest.c
+++ b/client/mysqltest.c
@@ -3901,6 +3901,22 @@ void get_query_type(struct st_query* q)
q->type != Q_DISABLE_PARSING)
q->type= Q_COMMENT;
}
+ else if (q->type == Q_COMMENT_WITH_COMMAND &&
+ q->query[q->first_word_len-1] == ';')
+ {
+ /*
+ Detect comment with command using extra delimiter
+ Ex --disable_query_log;
+ ^ Extra delimiter causing the command
+ to be skipped
+ */
+ save= q->query[q->first_word_len-1];
+ q->query[q->first_word_len-1]= 0;
+ type= find_type(q->query, &command_typelib, 1+2);
+ q->query[q->first_word_len-1]= save;
+ if (type > 0)
+ die("Extra delimiter \";\" found");
+ }
DBUG_VOID_RETURN;
}
diff --git a/mysql-test/include/have_lowercase0.inc b/mysql-test/include/have_lowercase0.inc
index f967c18928b..8d3ae02f61e 100644
--- a/mysql-test/include/have_lowercase0.inc
+++ b/mysql-test/include/have_lowercase0.inc
@@ -1,4 +1,4 @@
--require r/lowercase0.require
---disable_query_log;
+--disable_query_log
show variables like "lower_case_%";
---enable_query_log;
+--enable_query_log
diff --git a/mysql-test/r/mysqltest.result b/mysql-test/r/mysqltest.result
index 4757d8b1a03..c643a5ae647 100644
--- a/mysql-test/r/mysqltest.result
+++ b/mysql-test/r/mysqltest.result
@@ -152,6 +152,7 @@ mysqltest: At line 1: End of line junk detected: "6"
mysqltest: At line 1: End of line junk detected: "6"
mysqltest: At line 1: Missing delimiter
mysqltest: At line 1: Extra delimiter ";" found
+mysqltest: At line 1: Extra delimiter ";" found
MySQL
"MySQL"
MySQL: The world''s most popular open source database
diff --git a/mysql-test/t/mysqltest.test b/mysql-test/t/mysqltest.test
index 2a90e2be8d1..c903749839d 100644
--- a/mysql-test/t/mysqltest.test
+++ b/mysql-test/t/mysqltest.test
@@ -369,6 +369,8 @@ select 3 from t1 ;
#
--error 1
--exec echo "--sleep 4;" | $MYSQL_TEST 2>&1
+--error 1
+--exec echo "--disable_query_log;" | $MYSQL_TEST 2>&1
# Allow trailing # comment
@@ -592,7 +594,7 @@ while ($num)
--source var/tmp/sourced1.sql
dec $num;
}
---enable_abort_on_error;
+--enable_abort_on_error
--enable_query_log
# ----------------------------------------------------------------------------