summaryrefslogtreecommitdiff
path: root/client/readline.cc
diff options
context:
space:
mode:
authorunknown <iggy@rolltop.ignatz42.dyndns.org>2006-11-21 21:10:02 -0500
committerunknown <iggy@rolltop.ignatz42.dyndns.org>2006-11-21 21:10:02 -0500
commit0c7d10bde7378e101e6ce4c0caa818fb0688f3db (patch)
treec505244d4f29337835050d6689727ea7df80c669 /client/readline.cc
parente7065e0643e7d59baccf917acdc15add5b7fcdbf (diff)
downloadmariadb-git-0c7d10bde7378e101e6ce4c0caa818fb0688f3db.tar.gz
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. client/readline.cc: Bug#19799 delimiter command not working correctly when sourcing a sql file - When removing the '\n' character, check for and remove preceeding '\r' character as well. mysql-test/r/mysql.result: Bug#19799 delimiter command not working correctly when sourcing a sql file - Added Results. mysql-test/t/mysql_delimiter.sql: Bug#19799 delimiter command not working correctly when sourcing a sql file - Added Tests. mysql-test/t/mysql_delimiter_19799.sql: Bug#19799 delimiter command not working correctly when sourcing a sql file - File containing delimiter statement followed by '\r\n' line ending.
Diffstat (limited to 'client/readline.cc')
-rw-r--r--client/readline.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/client/readline.cc b/client/readline.cc
index 3d524633d69..52abe1045b7 100644
--- a/client/readline.cc
+++ b/client/readline.cc
@@ -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;