From e70bc182cf86799e1e5fdc5ca7a29b74a860d864 Mon Sep 17 00:00:00 2001 From: Bertrik Sikken Date: Mon, 23 Aug 2010 20:09:58 +0000 Subject: Reinitialise ogg_malloc system on each track change with the vorbis codec - part of FS #11533 by me git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27866 a1c6a512-1295-4272-9138-f99709370657 --- apps/codecs/vorbis.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/codecs/vorbis.c b/apps/codecs/vorbis.c index 831021fe70..7435434721 100644 --- a/apps/codecs/vorbis.c +++ b/apps/codecs/vorbis.c @@ -127,8 +127,6 @@ enum codec_status codec_main(void) goto exit; } - ogg_malloc_init(); - #if defined(CPU_ARM) || defined(CPU_COLDFIRE) || defined(CPU_MIPS) if (setjmp(rb_jump_buf) != 0) { /* malloc failed; skip to next track */ @@ -138,6 +136,8 @@ enum codec_status codec_main(void) #endif next_track: + ogg_malloc_init(); + while (!*ci->taginfo_ready && !ci->stop_codec) ci->sleep(1); @@ -244,6 +244,7 @@ done: DEBUGF("Vorbis: Memory max: %u\n", get_max_size(buf)); } #endif + ogg_malloc_destroy(); if (ci->request_next_track()) { /* Clean things up for the next track */ @@ -256,6 +257,5 @@ done: } exit: - ogg_malloc_destroy(); return error; } -- cgit v1.2.3