summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHardeep Sidhu <dyp@pobox.com>2003-06-25 15:17:04 +0000
committerHardeep Sidhu <dyp@pobox.com>2003-06-25 15:17:04 +0000
commitdf34e6b71a04c70ecd1164341bdd1c58477e697f (patch)
treee776af3b817d6fd83a5dc195fe0c787241274156
parentb88f2bc9b11ed54aae6bfb1affadf28e435ab736 (diff)
downloadrockbox-df34e6b71a04c70ecd1164341bdd1c58477e697f.zip
rockbox-df34e6b71a04c70ecd1164341bdd1c58477e697f.tar.gz
rockbox-df34e6b71a04c70ecd1164341bdd1c58477e697f.tar.bz2
rockbox-df34e6b71a04c70ecd1164341bdd1c58477e697f.tar.xz
In flush_reload, don't reset swapwrite if we're still swapping current track. Fixes a silent play bug.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3760 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/mpeg.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/firmware/mpeg.c b/firmware/mpeg.c
index 11f7e60..57234fc 100644
--- a/firmware/mpeg.c
+++ b/firmware/mpeg.c
@@ -1675,7 +1675,12 @@ static void mpeg_thread(void)
int next = (tag_read_idx+1) & MAX_ID3_TAGS_MASK;
/* Reset the buffer */
- mp3buf_write = mp3buf_swapwrite = id3tags[next]->mempos;
+ mp3buf_write = id3tags[next]->mempos;
+
+ /* Reset swapwrite unless we're still swapping current
+ track */
+ if (get_unplayed_space() <= get_playable_space())
+ mp3buf_swapwrite = mp3buf_write;
close(mpeg_file);
remove_all_non_current_tags();