call faacDecClose() with all libfaad versions
authorDiego Pettenò <flameeyes@gmail.com>
Sat, 31 Mar 2007 16:47:39 +0000 (16:47 +0000)
committerMåns Rullgård <mans@mansr.com>
Sat, 31 Mar 2007 16:47:39 +0000 (16:47 +0000)
patch by Diego Petteno flameeyes gmail com

Originally committed as revision 8574 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/faad.c

index 80e5e0b..01cbd40 100644 (file)
@@ -196,8 +196,7 @@ static int faac_decode_end(AVCodecContext *avctx)
 {
     FAACContext *s = (FAACContext *) avctx->priv_data;
 
-    if (s->faacDecClose)
-        s->faacDecClose(s->faac_handle);
+    s->faacDecClose(s->faac_handle);
 
     dlclose(s->handle);
     return 0;
@@ -228,6 +227,7 @@ static int faac_decode_init(AVCodecContext *avctx)
 
         // resolve all needed function calls
         dfaac(Open, (faacDecHandle FAADAPI (*)(void)));
+        dfaac(Close, (void FAADAPI (*)(faacDecHandle hDecoder)));
         dfaac(GetCurrentConfiguration, (faacDecConfigurationPtr
                                         FAADAPI (*)(faacDecHandle)));
 #ifndef FAAD2_VERSION
@@ -239,7 +239,6 @@ static int faac_decode_init(AVCodecContext *avctx)
     dfaac(Init2, (int FAADAPI (*)(faacDecHandle, unsigned char*,
                                        unsigned long, unsigned long*,
                                        unsigned long*)));
-    dfaac(Close, (void FAADAPI (*)(faacDecHandle hDecoder)));
         dfaac(Decode, (int FAADAPI (*)(faacDecHandle, unsigned char*,
                              unsigned long*, short*, unsigned long*)));
 #else