h264: reset h->ref_count in case of errors in ff_h264_decode_ref_pic_list_reordering()
authorLaurent Aimar <fenrir@videolan.org>
Sun, 2 Oct 2011 14:03:47 +0000 (14:03 +0000)
committerJanne Grunau <janne-libav@jannau.net>
Mon, 10 Oct 2011 19:37:36 +0000 (21:37 +0200)
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
libavcodec/h264.c

index aac1a15..4dbd063 100644 (file)
@@ -2857,8 +2857,10 @@ static int decode_slice_header(H264Context *h, H264Context *h0){
         ff_h264_fill_default_ref_list(h);
     }
 
-    if(h->slice_type_nos!=AV_PICTURE_TYPE_I && ff_h264_decode_ref_pic_list_reordering(h) < 0)
+    if(h->slice_type_nos!=AV_PICTURE_TYPE_I && ff_h264_decode_ref_pic_list_reordering(h) < 0) {
+        h->ref_count[1]= h->ref_count[0]= 0;
         return -1;
+    }
 
     if(h->slice_type_nos!=AV_PICTURE_TYPE_I){
         s->last_picture_ptr= &h->ref_list[0][0];