summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiika Pekkarinen <miipekk@ihme.org>2005-06-08 10:45:40 +0000
committerMiika Pekkarinen <miipekk@ihme.org>2005-06-08 10:45:40 +0000
commita9ac3d12ea01f562343c91118b8856feb94c5ca4 (patch)
treef4cccc037e72290792871fcdb69006eebe0bf384
parent5899ed5870d5554b154657ecef33db8c3c933c2c (diff)
downloadrockbox-a9ac3d12ea01f562343c91118b8856feb94c5ca4.tar.gz
rockbox-a9ac3d12ea01f562343c91118b8856feb94c5ca4.zip
Next track bug fixed that was introduced in previous commit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6606 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/playback.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/apps/playback.c b/apps/playback.c
index fef65f1e7d..1c9c12443c 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -565,19 +565,18 @@ bool loadcodec(const char *trackname, bool start_play)
565 return true; 565 return true;
566} 566}
567 567
568bool audio_load_track(int offset, bool start_play) 568bool audio_load_track(int offset, bool start_play, int peek_offset)
569{ 569{
570 char *trackname; 570 char *trackname;
571 int fd; 571 int fd;
572 off_t size; 572 off_t size;
573 int rc, i; 573 int rc, i;
574 int copy_n; 574 int copy_n;
575 int last_offset = 0;
576 575
577 if (track_count >= MAX_TRACK) 576 if (track_count >= MAX_TRACK)
578 return false; 577 return false;
579 578
580 trackname = playlist_peek(last_offset); 579 trackname = playlist_peek(peek_offset);
581 if (!trackname) { 580 if (!trackname) {
582 return false; 581 return false;
583 } 582 }
@@ -639,7 +638,6 @@ bool audio_load_track(int offset, bool start_play)
639 break ; 638 break ;
640 } 639 }
641 640
642 last_offset++;
643 track_count++; 641 track_count++;
644 i = tracks[track_widx].filepos; 642 i = tracks[track_widx].filepos;
645 while (i < size) { 643 while (i < size) {
@@ -694,11 +692,13 @@ bool audio_load_track(int offset, bool start_play)
694 692
695void audio_insert_tracks(int offset, bool start_playing) 693void audio_insert_tracks(int offset, bool start_playing)
696{ 694{
695 int peek_offset = 0;
697 fill_bytesleft = codecbuflen - codecbufused; 696 fill_bytesleft = codecbuflen - codecbufused;
698 filling = true; 697 filling = true;
699 while (audio_load_track(offset, start_playing)) { 698 while (audio_load_track(offset, start_playing, peek_offset)) {
700 start_playing = false; 699 start_playing = false;
701 offset = 0; 700 offset = 0;
701 peek_offset++;
702 } 702 }
703 filling = false; 703 filling = false;
704} 704}