diff options
author | ingo/mydev@chilla.local <> | 2006-07-29 21:59:36 +0200 |
---|---|---|
committer | ingo/mydev@chilla.local <> | 2006-07-29 21:59:36 +0200 |
commit | 9c006d44a016d96781d886f53ade1d1be468b4dc (patch) | |
tree | daed6d3a2b6187c7a21fe4a3557cf6f08d76122d /myisam | |
parent | 16abae89323d929b8d7848e7fe9123cafd91e0cc (diff) | |
parent | eddb73b3653334d925643e588802cbe86dcd27a5 (diff) | |
download | mariadb-git-9c006d44a016d96781d886f53ade1d1be468b4dc.tar.gz |
Merge chilla.local:/home/mydev/mysql-4.1-bug20719
into chilla.local:/home/mydev/mysql-5.0-bug20719
Diffstat (limited to 'myisam')
-rw-r--r-- | myisam/mi_dynrec.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/myisam/mi_dynrec.c b/myisam/mi_dynrec.c index 45873e32992..f834cc5a724 100644 --- a/myisam/mi_dynrec.c +++ b/myisam/mi_dynrec.c @@ -1180,6 +1180,9 @@ int _mi_read_dynamic_record(MI_INFO *info, my_off_t filepos, byte *buf) block_info.second_read= 0; do { + /* A corrupted table can have wrong pointers. (Bug# 19835) */ + if (filepos == HA_OFFSET_ERROR) + goto panic; if (info->opt_flag & WRITE_CACHE_USED && info->rec_cache.pos_in_file < filepos + MI_BLOCK_INFO_HEADER_LENGTH && flush_io_cache(&info->rec_cache)) |