X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fio%2Fkfile_block.c;h=e3bcdd3917fc1a21c6461701972900a17ffb7663;hb=fc4b3631d16afcfda7f714d7b0ac3e585de15af4;hp=a4278fb0037441d3e34b0e99562f0dd95dedd85f;hpb=12c71395c80c3d5e6f9532a4a912322b503ce391;p=bertos.git diff --git a/bertos/io/kfile_block.c b/bertos/io/kfile_block.c index a4278fb0..e3bcdd39 100644 --- a/bertos/io/kfile_block.c +++ b/bertos/io/kfile_block.c @@ -62,6 +62,8 @@ INLINE KFileBlock * KFILEBLOCK_CAST(KFile *fd) while (size) \ { \ block_idx_t id = (fd)->seek_pos / fb->blk->blk_size; \ + if (id >= fb->blk->blk_cnt) \ + break; \ size_t offset = (fd)->seek_pos % fb->blk->blk_size; \ size_t count = MIN(size, (size_t)(fb->blk->blk_size - offset)); \ size_t ret_len = kblock_##dir(fb->blk, id, buf, offset, count); \