summaryrefslogtreecommitdiff
path: root/apps/mpeg.c
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2011-10-09 12:30:37 +0000
committerThomas Martitz <kugel@rockbox.org>2011-10-09 12:30:37 +0000
commit889690c0f60a2ce2cdfd985895d0484c78083df1 (patch)
tree2b40d92a48d777319584ba5f161ce844970d6f3d /apps/mpeg.c
parentaed39dbbafc2f1cacfdce4382f22b06ab0224aae (diff)
downloadrockbox-889690c0f60a2ce2cdfd985895d0484c78083df1.tar.gz
rockbox-889690c0f60a2ce2cdfd985895d0484c78083df1.zip
Fix audio_get_buffer() implementation on hwcodec, to be similar to the swcodec one. Should make hwcodec bood again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30737 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/mpeg.c')
-rw-r--r--apps/mpeg.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/apps/mpeg.c b/apps/mpeg.c
index 2a2821bcda..b7db602120 100644
--- a/apps/mpeg.c
+++ b/apps/mpeg.c
@@ -558,8 +558,10 @@ unsigned char * audio_get_buffer(bool talk_buf, size_t *buffer_size)
558{ 558{
559 (void)talk_buf; /* always grab the voice buffer for now */ 559 (void)talk_buf; /* always grab the voice buffer for now */
560 560
561 if (buffer_size) /* special case for talk_init() */ 561 audio_hard_stop();
562 audio_hard_stop(); 562
563 if (!buffer_size) /* special case for talk_init() */
564 return NULL;
563 565
564 if (!audiobuf_handle) 566 if (!audiobuf_handle)
565 { 567 {
@@ -571,9 +573,9 @@ unsigned char * audio_get_buffer(bool talk_buf, size_t *buffer_size)
571 *buffer_size = audiobuflen; 573 *buffer_size = audiobuflen;
572 } 574 }
573 mpeg_audiobuf = core_get_data(audiobuf_handle); 575 mpeg_audiobuf = core_get_data(audiobuf_handle);
574 576 /* tell talk about the new buffer, don't re-enable just yet because the
575 if (!buffer_size) /* special case for talk_init() */ 577 * buffer is stolen */
576 talkbuf_init(mpeg_audiobuf); 578 talkbuf_init(mpeg_audiobuf);
577 579
578 return mpeg_audiobuf; 580 return mpeg_audiobuf;
579} 581}