diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/audio_dec/xine_faad_decoder.c | 6 | ||||
-rw-r--r-- | src/demuxers/demux_aac.c | 2 | ||||
-rw-r--r-- | src/post/visualizations/fft.c | 11 |
3 files changed, 12 insertions, 7 deletions
diff --git a/src/audio_dec/xine_faad_decoder.c b/src/audio_dec/xine_faad_decoder.c index be495ee8f..f9eedb6e8 100644 --- a/src/audio_dec/xine_faad_decoder.c +++ b/src/audio_dec/xine_faad_decoder.c @@ -250,8 +250,10 @@ static void faad_decode_audio ( faad_decoder_t *this, int end_frame ) { lprintf("NeAACDecDecode() returned rate=%"PRId32" channels=%d used=%d\n", this->rate, this->num_channels, used); - this->stream->audio_out->close (this->stream->audio_out, this->stream); - this->output_open = 0; + if (this->output_open) { + this->stream->audio_out->close (this->stream->audio_out, this->stream); + this->output_open = 0; + } faad_open_output( this ); faad_meta_info_set( this ); diff --git a/src/demuxers/demux_aac.c b/src/demuxers/demux_aac.c index bc2e72f73..2e1b7f614 100644 --- a/src/demuxers/demux_aac.c +++ b/src/demuxers/demux_aac.c @@ -91,7 +91,7 @@ static int open_aac_file(demux_aac_t *this) { return 0; /* Check for an ADIF header - should be at the start of the file */ - if (_x_is_fourcc(peak, "AIDF")) { + if (_x_is_fourcc(peak, "ADIF")) { lprintf("found ADIF header\n"); return 1; } diff --git a/src/post/visualizations/fft.c b/src/post/visualizations/fft.c index 8e9364400..0b61625c3 100644 --- a/src/post/visualizations/fft.c +++ b/src/post/visualizations/fft.c @@ -153,10 +153,13 @@ fft_t *fft_new (int bits) void fft_dispose(fft_t *fft) { - free(fft->SineTable); - free(fft->CosineTable); - free(fft->WinTable); - free(fft); + if (fft) + { + free(fft->SineTable); + free(fft->CosineTable); + free(fft->WinTable); + free(fft); + } } /* |