---
 libavcodec/vc1dec.c  | 6 +++---
 libavcodec/wmv2dec.c | 4 +---
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
index d65c68a..e60a084 100644
--- a/libavcodec/vc1dec.c
+++ b/libavcodec/vc1dec.c
@@ -314,7 +314,7 @@ static void vc1_sprite_flush(AVCodecContext *avctx)
 av_cold int ff_vc1_decode_init_alloc_tables(VC1Context *v)
 {
     MpegEncContext *s = &v->s;
-    int i;
+    int i, ret;
     int mb_height = FFALIGN(s->mb_height, 2);
 
     /* Allocate mb bitplanes */
@@ -360,7 +360,7 @@ av_cold int ff_vc1_decode_init_alloc_tables(VC1Context *v)
 //            return -1;
     }
 
-    ff_intrax8_common_init(&v->x8,s);
+    ret = ff_intrax8_common_init(&v->x8, s);
 
     if (s->avctx->codec_id == AV_CODEC_ID_WMV3IMAGE || s->avctx->codec_id == 
AV_CODEC_ID_VC1IMAGE) {
         for (i = 0; i < 4; i++)
@@ -369,7 +369,7 @@ av_cold int ff_vc1_decode_init_alloc_tables(VC1Context *v)
 
     if (!v->mv_type_mb_plane || !v->direct_mb_plane || !v->acpred_plane || 
!v->over_flags_plane ||
         !v->block || !v->cbp_base || !v->ttblk_base || !v->is_intra_base || 
!v->luma_mv_base ||
-        !v->mb_type_base) {
+        !v->mb_type_base || ret < 0) {
         av_freep(&v->mv_type_mb_plane);
         av_freep(&v->direct_mb_plane);
         av_freep(&v->acpred_plane);
diff --git a/libavcodec/wmv2dec.c b/libavcodec/wmv2dec.c
index c71fd3d..9418086 100644
--- a/libavcodec/wmv2dec.c
+++ b/libavcodec/wmv2dec.c
@@ -467,9 +467,7 @@ static av_cold int wmv2_decode_init(AVCodecContext *avctx)
 
     ff_wmv2_common_init(w);
 
-    ff_intrax8_common_init(&w->x8, &w->s);
-
-    return 0;
+    return ff_intrax8_common_init(&w->x8, &w->s);
 }
 
 static av_cold int wmv2_decode_end(AVCodecContext *avctx)
-- 
2.7.0

_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to