summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorBrandon Low <lostlogic@rockbox.org>2006-04-14 03:47:32 +0000
committerBrandon Low <lostlogic@rockbox.org>2006-04-14 03:47:32 +0000
commit2f11d60dcd1dec9305f85b60144213de5c3ca96b (patch)
treebd334ab8ac90f1e29292377db6339f5c22e9b86e /apps
parent1d41f77b37c00f72a482ecb3bee16d43d6e0b4ea (diff)
downloadrockbox-2f11d60dcd1dec9305f85b60144213de5c3ca96b.zip
rockbox-2f11d60dcd1dec9305f85b60144213de5c3ca96b.tar.gz
rockbox-2f11d60dcd1dec9305f85b60144213de5c3ca96b.tar.bz2
rockbox-2f11d60dcd1dec9305f85b60144213de5c3ca96b.tar.xz
Change when the new_track variable is reset to fix the track display during skipping
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9652 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/playback.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/apps/playback.c b/apps/playback.c
index 791ae5c..808cb52 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -778,6 +778,7 @@ static void audio_check_new_track(bool require_codec)
{
int track_count = audio_track_count();
int old_track_ridx = track_ridx;
+ bool forward;
/* If the playlist isn't that big */
if (!playlist_check(new_track))
@@ -805,6 +806,9 @@ static void audio_check_new_track(bool require_codec)
else if (track_ridx < 0)
track_ridx += MAX_TRACK;
+ forward = new_track > 0;
+ new_track = 0;
+
/* Save the old track */
prev_ti = cur_ti;
/* Move to the new track */
@@ -819,7 +823,7 @@ static void audio_check_new_track(bool require_codec)
else if (cur_ti->filesize == 0 || !cur_ti->taginfo_ready)
audio_rebuffer();
/* The track may be in memory, see if it really is */
- else if (new_track > 0)
+ else if (forward)
{
if (!buffer_wind_forward(require_codec, track_ridx, old_track_ridx))
audio_rebuffer();
@@ -861,7 +865,6 @@ static void audio_check_new_track(bool require_codec)
audio_update_trackinfo();
buffer_done:
- new_track = 0;
mutex_unlock(&mutex_interthread);
}