From 86ef57b9757c7cc23951040c5c46966728eeb8fa Mon Sep 17 00:00:00 2001 From: Maurus Cuelenaere Date: Mon, 27 Jul 2009 17:00:26 +0000 Subject: Jz4740 PCM driver: check whether pcm_callback_for_more isn't NULL (fixes metronome) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22072 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/mips/ingenic_jz47xx/pcm-jz4740.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'firmware/target/mips/ingenic_jz47xx/pcm-jz4740.c') diff --git a/firmware/target/mips/ingenic_jz47xx/pcm-jz4740.c b/firmware/target/mips/ingenic_jz47xx/pcm-jz4740.c index 1fbc94065b..32a14744df 100644 --- a/firmware/target/mips/ingenic_jz47xx/pcm-jz4740.c +++ b/firmware/target/mips/ingenic_jz47xx/pcm-jz4740.c @@ -81,11 +81,13 @@ static inline void set_dma(const void *addr, size_t size) static inline void play_dma_callback(void) { - unsigned char *start; + unsigned char *start = NULL; size_t size = 0; - pcm_callback_for_more(&start, &size); - if(LIKELY(size > 0)) + if(pcm_callback_for_more) + pcm_callback_for_more(&start, &size); + + if(LIKELY(size > 0 && start)) { set_dma(start, size); REG_DMAC_DCCSR(DMA_AIC_TX_CHANNEL) |= DMAC_DCCSR_EN; -- cgit v1.2.3