diff options
author | unknown <thek@kpdesk.mysql.com> | 2007-01-11 14:11:58 +0100 |
---|---|---|
committer | unknown <thek@kpdesk.mysql.com> | 2007-01-11 14:11:58 +0100 |
commit | 081b9c0e6b6824341c34cf253617fd26179f7ba6 (patch) | |
tree | 09f88cb0fce9aa5ac02be85b962905abb2a27798 /mysys | |
parent | b88f53e74e891962444f11b50fe8c36bc11b20a2 (diff) | |
parent | 9397ff2a7d0556de1f312db679cb27554c5bf158 (diff) | |
download | mariadb-git-081b9c0e6b6824341c34cf253617fd26179f7ba6.tar.gz |
Merge kpettersson@bk-internal:/home/bk/mysql-4.1-maint
into kpdesk.mysql.com:/home/thek/dev/mysql-4.1-maint
mysys/mf_iocache.c:
Auto merged
Diffstat (limited to 'mysys')
-rw-r--r-- | mysys/mf_iocache.c | 6 | ||||
-rw-r--r-- | mysys/my_seek.c | 5 |
2 files changed, 10 insertions, 1 deletions
diff --git a/mysys/mf_iocache.c b/mysys/mf_iocache.c index a91002d3b4c..00097d32dc0 100644 --- a/mysys/mf_iocache.c +++ b/mysys/mf_iocache.c @@ -338,7 +338,11 @@ my_bool reinit_io_cache(IO_CACHE *info, enum cache_type type, if (info->type == READ_CACHE) { info->write_end=info->write_buffer+info->buffer_length; - info->seek_not_done=1; + /* + Trigger a new seek only if we have a valid + file handle. + */ + info->seek_not_done= (info->file >= 0); } info->end_of_file = ~(my_off_t) 0; } diff --git a/mysys/my_seek.c b/mysys/my_seek.c index a9ae68cd5f0..f03a932e696 100644 --- a/mysys/my_seek.c +++ b/mysys/my_seek.c @@ -51,6 +51,11 @@ my_off_t my_seek(File fd, my_off_t pos, int whence, whence, MyFlags)); DBUG_ASSERT(pos != MY_FILEPOS_ERROR); /* safety check */ + /* + Make sure we are using a valid file descriptor + */ + DBUG_ASSERT(fd >= 0); + newpos=lseek(fd, pos, whence); if (newpos == (os_off_t) -1) { |