OSDN Git Service

avcodec/snow: fix null pointer dereference in cleanup after allocation failure
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 11 Aug 2014 13:36:22 +0000 (15:36 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 28 Nov 2014 17:44:37 +0000 (18:44 +0100)
Fixes: snowf.avi
Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 9a162146ca6cc12ef7ad4a15164349482885962c)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/snow.c

index b54c491..9a07d97 100644 (file)
@@ -688,7 +688,7 @@ av_cold void ff_snow_common_end(SnowContext *s)
     for(i=0; i<MAX_REF_FRAMES; i++){
         av_freep(&s->ref_mvs[i]);
         av_freep(&s->ref_scores[i]);
-        if(s->last_picture[i]->data[0]) {
+        if(s->last_picture[i] && s->last_picture[i]->data[0]) {
             av_assert0(s->last_picture[i]->data[0] != s->current_picture->data[0]);
         }
         av_frame_free(&s->last_picture[i]);