Commit cab074cb authored by msvensson@pilot.blaudden's avatar msvensson@pilot.blaudden

Merge pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint

into  pilot.blaudden:/home/msvensson/mysql/mysql-5.1-new-maint
parents 2d819535 a799f2b6
...@@ -251,16 +251,22 @@ drop table t17583; ...@@ -251,16 +251,22 @@ drop table t17583;
# #
# This should work just fine... # This should work just fine...
--exec echo "DELIMITER /" > $MYSQLTEST_VARDIR/tmp/bug21412.sql --write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
--exec echo "SELECT 1/" >> $MYSQLTEST_VARDIR/tmp/bug21412.sql DELIMITER /
SELECT 1/
EOF
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1 --exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
# This should give an error... # This should give an error...
--exec echo "DELIMITER \\" > $MYSQLTEST_VARDIR/tmp/bug21412.sql --write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
DELIMITER \
EOF
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1 --exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
# As should this... # As should this...
--exec echo "DELIMITER \\\\" > $MYSQLTEST_VARDIR/tmp/bug21412.sql --write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
DELIMITER \\
EOF
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1 --exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1
# #
......
...@@ -170,13 +170,16 @@ int init_io_cache(IO_CACHE *info, File file, uint cachesize, ...@@ -170,13 +170,16 @@ int init_io_cache(IO_CACHE *info, File file, uint cachesize,
info->arg = 0; info->arg = 0;
info->alloced_buffer = 0; info->alloced_buffer = 0;
info->buffer=0; info->buffer=0;
info->seek_not_done= 0;
if (file >= 0)
{
pos= my_tell(file, MYF(0)); pos= my_tell(file, MYF(0));
if ((pos == (my_off_t) -1) && (my_errno == ESPIPE)) if ((pos == (my_off_t) -1) && (my_errno == ESPIPE))
{ {
/* /*
This kind of object doesn't support seek() or tell(). Don't set a flag This kind of object doesn't support seek() or tell(). Don't set a
that will make us again try to seek() later and fail. flag that will make us again try to seek() later and fail.
*/ */
info->seek_not_done= 0; info->seek_not_done= 0;
/* /*
...@@ -187,7 +190,8 @@ int init_io_cache(IO_CACHE *info, File file, uint cachesize, ...@@ -187,7 +190,8 @@ int init_io_cache(IO_CACHE *info, File file, uint cachesize,
DBUG_ASSERT(seek_offset == 0); DBUG_ASSERT(seek_offset == 0);
} }
else else
info->seek_not_done= test(file >= 0 && seek_offset != pos); info->seek_not_done= test(seek_offset != pos);
}
info->disk_writes= 0; info->disk_writes= 0;
#ifdef THREAD #ifdef THREAD
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment