Commit fb4ed070 authored by unknown's avatar unknown
Browse files

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

into  pilot.blaudden:/home/msvensson/mysql/mysql-5.1-new-maint


mysql-test/t/mysql.test:
  Auto merged
mysys/mf_iocache.c:
  Auto merged
parents 71a25f2b e78413ca
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
@@ -251,16 +251,22 @@ drop table t17583;
#

# This should work just fine...
--exec echo "DELIMITER /" > $MYSQLTEST_VARDIR/tmp/bug21412.sql
--exec echo "SELECT 1/"   >> $MYSQLTEST_VARDIR/tmp/bug21412.sql
--write_file $MYSQLTEST_VARDIR/tmp/bug21412.sql
DELIMITER /
SELECT 1/
EOF
--exec $MYSQL             < $MYSQLTEST_VARDIR/tmp/bug21412.sql 2>&1

# 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

# 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

#
+19 −15
Original line number Diff line number Diff line
@@ -170,13 +170,16 @@ int init_io_cache(IO_CACHE *info, File file, uint cachesize,
  info->arg = 0;
  info->alloced_buffer = 0;
  info->buffer=0;
  info->seek_not_done= 0;

  if (file >= 0)
  {
    pos= my_tell(file, MYF(0));
    if ((pos == (my_off_t) -1) && (my_errno == ESPIPE))
    {
      /*
      This kind of object doesn't support seek() or tell().  Don't set a flag
      that will make us again try to seek() later and fail.
         This kind of object doesn't support seek() or tell(). Don't set a
         flag that will make us again try to seek() later and fail.
      */
      info->seek_not_done= 0;
      /*
@@ -187,7 +190,8 @@ int init_io_cache(IO_CACHE *info, File file, uint cachesize,
      DBUG_ASSERT(seek_offset == 0);
    }
    else
    info->seek_not_done= test(file >= 0 && seek_offset != pos);
      info->seek_not_done= test(seek_offset != pos);
  }

  info->disk_writes= 0;
#ifdef THREAD