summaryrefslogtreecommitdiffstats
path: root/lib/rbcodec/codecs/opus.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rbcodec/codecs/opus.c')
-rw-r--r--lib/rbcodec/codecs/opus.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/lib/rbcodec/codecs/opus.c b/lib/rbcodec/codecs/opus.c
index 3eb316de68..d72b9cc708 100644
--- a/lib/rbcodec/codecs/opus.c
+++ b/lib/rbcodec/codecs/opus.c
@@ -329,10 +329,8 @@ enum codec_status codec_run(void)
int64_t seek_target;
uint64_t granule_pos;
- /* reset our simple malloc */
- if (codec_init()) {
- goto done;
- }
+ ogg_malloc_init();
+
global_stack = 0;
#if defined(CPU_COLDFIRE)
@@ -344,10 +342,10 @@ enum codec_status codec_run(void)
/* pre-init the ogg_sync_state buffer, so it won't need many reallocs */
ogg_sync_init(&oy);
oy.storage = 64*1024;
- oy.data = codec_malloc(oy.storage);
+ oy.data = _ogg_malloc(oy.storage);
/* allocate output buffer */
- uint16_t *output = (uint16_t*) codec_malloc(MAX_FRAME_SIZE*sizeof(uint16_t));
+ uint16_t *output = (uint16_t*) _ogg_malloc(MAX_FRAME_SIZE*sizeof(uint16_t));
ci->seek_buffer(0);
ci->set_elapsed(0);
@@ -465,6 +463,7 @@ enum codec_status codec_run(void)
LOGF("Returned OK");
error = CODEC_OK;
done:
+ ogg_malloc_destroy();
return error;
}