From 07dff5c7a421b346a23c685259eb6e88abacb5d3 Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Thu, 25 Sep 2008 14:29:35 +0000
Subject: [PATCH] Initialize next/last_picture* as the generic code does not
 always set them to sane values.

Originally committed as revision 15412 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavcodec/h264.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index d6751925a90..d2daba1f66f 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -3925,6 +3925,15 @@ static int decode_slice_header(H264Context *h, H264Context *h0){
     if(h->slice_type_nos!=FF_I_TYPE && decode_ref_pic_list_reordering(h) < 0)
         return -1;
 
+    if(h->slice_type_nos!=FF_I_TYPE){
+        s->last_picture_ptr= &h->ref_list[0][0];
+        copy_picture(&s->last_picture, s->last_picture_ptr);
+    }
+    if(h->slice_type_nos==FF_B_TYPE){
+        s->next_picture_ptr= &h->ref_list[1][0];
+        copy_picture(&s->next_picture, s->next_picture_ptr);
+    }
+
     if(   (h->pps.weighted_pred          && h->slice_type_nos == FF_P_TYPE )
        ||  (h->pps.weighted_bipred_idc==1 && h->slice_type_nos== FF_B_TYPE ) )
         pred_weight_table(h);
-- 
GitLab