summaryrefslogtreecommitdiff
path: root/apps/codecs/wma.c
diff options
context:
space:
mode:
authorThom Johansen <thomj@rockbox.org>2007-10-17 12:51:37 +0000
committerThom Johansen <thomj@rockbox.org>2007-10-17 12:51:37 +0000
commita478e46946ea61347fd66a32c7dadcbf72debbd3 (patch)
tree0008bfc4166029446d33ee8aacdf757e0f901a91 /apps/codecs/wma.c
parentb1caffc7bd94fc25a9a8e520b46cde81f0efe42e (diff)
downloadrockbox-a478e46946ea61347fd66a32c7dadcbf72debbd3.tar.gz
rockbox-a478e46946ea61347fd66a32c7dadcbf72debbd3.zip
Fix FS #7973. Hack a way to make skip to start of track work for WMA until we have proper seeking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15166 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/wma.c')
-rw-r--r--apps/codecs/wma.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/apps/codecs/wma.c b/apps/codecs/wma.c
index bf11841451..f50b023a92 100644
--- a/apps/codecs/wma.c
+++ b/apps/codecs/wma.c
@@ -321,7 +321,7 @@ enum codec_status codec_main(void)
321 321
322 ci->configure(DSP_SET_SAMPLE_DEPTH, 30); 322 ci->configure(DSP_SET_SAMPLE_DEPTH, 30);
323 323
324 next_track: 324next_track:
325 325
326 /* Wait for the metadata to be read */ 326 /* Wait for the metadata to be read */
327 while (!*ci->taginfo_ready && !ci->stop_codec) 327 while (!*ci->taginfo_ready && !ci->stop_codec)
@@ -373,10 +373,13 @@ enum codec_status codec_main(void)
373 goto done; 373 goto done;
374 } 374 }
375 375
376 /* Deal with any pending seek requests - ignore them */ 376 /* Deal with any pending seek requests */
377 if (ci->seek_time) 377 if (ci->seek_time)
378 { 378 {
379 /* Ignore all seeks for now, unless for the start of the track */
379 ci->seek_complete(); 380 ci->seek_complete();
381 if (ci->seek_time == 1)
382 goto next_track; /* Pretend you never saw this... */
380 } 383 }
381 384
382 res = asf_read_packet(&audiobuf, &audiobufsize, &packetlength, &wfx); 385 res = asf_read_packet(&audiobuf, &audiobufsize, &packetlength, &wfx);