20 #include "myisam_priv.h"
34 int mi_rrnd(
MI_INFO *info,
unsigned char *buf,
register internal::my_off_t filepos)
36 bool skip_deleted_blocks;
38 skip_deleted_blocks=0;
40 if (filepos == HA_OFFSET_ERROR)
42 skip_deleted_blocks=1;
43 if (info->lastpos == HA_OFFSET_ERROR)
44 filepos= info->s->pack.header_length;
46 filepos= info->nextpos;
49 if (info->once_flags & RRND_PRESERVE_LASTINX)
50 info->once_flags&= ~RRND_PRESERVE_LASTINX;
54 info->update&= (HA_STATE_CHANGED | HA_STATE_ROW_CHANGED);
56 if (info->opt_flag & WRITE_CACHE_USED && info->rec_cache.flush())
59 return ((*info->s->read_rnd)(info,buf,filepos,skip_deleted_blocks));
TODO: Rename this file - func.h is stupid.