Commit e7274571 authored by unknown's avatar unknown

Merge naruto.:C:/cpp/bug23010/my50-bug23010

into  naruto.:C:/cpp/mysql-5.0-maint

parents 1e8c450d c6a67e69
...@@ -333,7 +333,11 @@ my_bool reinit_io_cache(IO_CACHE *info, enum cache_type type, ...@@ -333,7 +333,11 @@ my_bool reinit_io_cache(IO_CACHE *info, enum cache_type type,
{ {
info->read_end=info->write_pos; info->read_end=info->write_pos;
info->end_of_file=my_b_tell(info); info->end_of_file=my_b_tell(info);
info->seek_not_done=1; /*
Trigger a new seek only if we have a valid
file handle.
*/
info->seek_not_done= (info->file != -1);
} }
else if (type == WRITE_CACHE) else if (type == WRITE_CACHE)
{ {
......
...@@ -29,8 +29,13 @@ my_off_t my_seek(File fd, my_off_t pos, int whence, ...@@ -29,8 +29,13 @@ my_off_t my_seek(File fd, my_off_t pos, int whence,
whence, MyFlags)); whence, MyFlags));
DBUG_ASSERT(pos != MY_FILEPOS_ERROR); /* safety check */ DBUG_ASSERT(pos != MY_FILEPOS_ERROR); /* safety check */
if (-1 != fd) /*
newpos=lseek(fd, pos, whence); Make sure we are using a valid file descriptor!
*/
DBUG_ASSERT(fd != -1);
newpos= lseek(fd, pos, whence);
if (newpos == (os_off_t) -1) if (newpos == (os_off_t) -1)
{ {
my_errno=errno; my_errno=errno;
......
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