swr: make sure the last data element is NULL so we can use it to detect the number...
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 24 Sep 2012 20:52:36 +0000 (22:52 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 24 Sep 2012 21:19:32 +0000 (23:19 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libswresample/audioconvert.c
libswresample/swresample.c

index 2e5bd72..d2e3722 100644 (file)
@@ -179,6 +179,7 @@ int swri_audio_convert(AudioConvert *ctx, AudioData *out, AudioData *in, int len
         off = len&~15;
         av_assert1(off>=0);
         av_assert1(off<=len);
+        av_assert2(ctx->channels == SWR_CH_MAX || !in->ch[ctx->channels]);
         if(off>0){
             if(out->planar == in->planar){
                 int planes = out->planar ? out->ch_count : 1;
index fdd5aae..5d02aaf 100644 (file)
@@ -214,6 +214,8 @@ av_cold int swr_init(struct SwrContext *s){
     free_temp(&s->preout);
     free_temp(&s->in_buffer);
     free_temp(&s->dither);
+    memset(s->in.ch, 0, sizeof(s->in.ch));
+    memset(s->out.ch, 0, sizeof(s->out.ch));
     swri_audio_convert_free(&s-> in_convert);
     swri_audio_convert_free(&s->out_convert);
     swri_audio_convert_free(&s->full_convert);