diff options
| author | Dave Chapman <dave@dchapman.com> | 2006-07-03 21:23:14 +0000 |
|---|---|---|
| committer | Dave Chapman <dave@dchapman.com> | 2006-07-03 21:23:14 +0000 |
| commit | b1a272eee20cd3ca616432e81ca9adccc8f55e29 (patch) | |
| tree | b4f75d97ffc2cc4627807ccb2816ec3737e49586 | |
| parent | 9ad33fe4b0a871dcccb68f9548d994321cb25282 (diff) | |
| download | rockbox-b1a272eee20cd3ca616432e81ca9adccc8f55e29.zip rockbox-b1a272eee20cd3ca616432e81ca9adccc8f55e29.tar.gz rockbox-b1a272eee20cd3ca616432e81ca9adccc8f55e29.tar.bz2 rockbox-b1a272eee20cd3ca616432e81ca9adccc8f55e29.tar.xz | |
Patch by Mark Arigo to close bug report #5305 - fixes crashes when attempting to seek beyond the currently buffered data.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10181 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | apps/playback.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/apps/playback.c b/apps/playback.c index ecfb933..4fc0c33 100644 --- a/apps/playback.c +++ b/apps/playback.c @@ -1074,10 +1074,12 @@ static void rebuffer_and_seek(size_t newpos) last_peek_offset = 0; initialize_buffer_fill(true); - if (newpos > AUDIO_REBUFFER_GUESS_SIZE) + if (newpos > AUDIO_REBUFFER_GUESS_SIZE) { + buf_ridx += AUDIO_REBUFFER_GUESS_SIZE; cur_ti->start_pos = newpos - AUDIO_REBUFFER_GUESS_SIZE; - else + } else { cur_ti->start_pos = 0; + } cur_ti->filerem = cur_ti->filesize - cur_ti->start_pos; cur_ti->available = 0; |