mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Bug#19799 delimiter command not working correctly when sourcing a sql file
- Client side readline functions unconditionally search for Unix '\n' line endings. In this case, the delimiter statement was set to '//\r' instead of the intended '//'. When removing the '\n' check for and remove preceeding '\r' character as well.
This commit is contained in:
@ -51,7 +51,8 @@ char *batch_readline(LINE_BUFFER *line_buff)
|
||||
if (!(pos=intern_read_line(line_buff,&out_length)))
|
||||
return 0;
|
||||
if (out_length && pos[out_length-1] == '\n')
|
||||
out_length--; /* Remove '\n' */
|
||||
if (--out_length && pos[out_length-1] == '\r') /* Remove '\n' */
|
||||
out_length--; /* Remove '\r' */
|
||||
line_buff->read_length=out_length;
|
||||
pos[out_length]=0;
|
||||
return pos;
|
||||
|
@ -36,6 +36,10 @@ Tables_in_test
|
||||
t1
|
||||
t2
|
||||
t3
|
||||
Database
|
||||
information_schema
|
||||
mysql
|
||||
test
|
||||
_
|
||||
Test delimiter : from command line
|
||||
a
|
||||
|
@ -49,3 +49,12 @@ delimiter ; # Reset delimiter
|
||||
# Bug #11523: \d works differently than delimiter
|
||||
#
|
||||
source t/mysql_delimiter_source.sql
|
||||
delimiter ; # Reset delimiter
|
||||
|
||||
#
|
||||
# Bug #19799: delimiter command not working correctly when sourcing a sql file
|
||||
# with Windows style line endings.
|
||||
#
|
||||
source t/mysql_delimiter_19799.sql
|
||||
show databases//
|
||||
delimiter ; # Reset delimiter
|
||||
|
1
mysql-test/t/mysql_delimiter_19799.sql
Executable file
1
mysql-test/t/mysql_delimiter_19799.sql
Executable file
@ -0,0 +1 @@
|
||||
delimiter //
|
Reference in New Issue
Block a user