| ... | ... | @@ -662,6 +662,7 @@ const MsfStream = struct { |
| 662 | 662 | |
| 663 | 663 | fn read(self: *MsfStream, buffer: []u8) !usize { |
| 664 | 664 | var block_id = @intCast(usize, self.pos / self.block_size); |
| 665 | if (block_id >= self.blocks.len) return 0; // End of Stream |
| 665 | 666 | var block = self.blocks[block_id]; |
| 666 | 667 | var offset = self.pos % self.block_size; |
| 667 | 668 | |
| ... | ... | @@ -680,6 +681,7 @@ const MsfStream = struct { |
| 680 | 681 | if (offset == self.block_size) { |
| 681 | 682 | offset = 0; |
| 682 | 683 | block_id += 1; |
| 684 | if (block_id >= self.blocks.len) break; // End of Stream |
| 683 | 685 | block = self.blocks[block_id]; |
| 684 | 686 | try self.in_file.seekTo(block * self.block_size); |
| 685 | 687 | } |