1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Detect comment with command using extra delimiter

mysql-test/include/have_lowercase0.inc:
  Remove extra ; at end of command(causing it to be skipped)
mysql-test/r/mysqltest.result:
  Update test results
mysql-test/t/mysqltest.test:
  Add test to detect "comment with command" with extra ; delimiter
  Fix extra ; delimiter
This commit is contained in:
unknown
2005-09-06 12:33:36 +02:00
parent c29a8d4e5b
commit 8bb920586e
4 changed files with 22 additions and 3 deletions

View File

@ -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;
}

View File

@ -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

View File

@ -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

View File

@ -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
# ----------------------------------------------------------------------------