avcodec/h264: set er.ref_count earlier
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 1 Sep 2013 01:40:20 +0000 (03:40 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 1 Sep 2013 02:02:03 +0000 (04:02 +0200)
Fixes Ticket2910

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

index 1d069a8..a9995bd 100644 (file)
@@ -3998,6 +3998,7 @@ static int decode_slice_header(H264Context *h, H264Context *h0)
 
     if (h->ref_count[0]) h->er.last_pic = &h->ref_list[0][0];
     if (h->ref_count[1]) h->er.next_pic = &h->ref_list[1][0];
+    h->er.ref_count = h->ref_count[0];
 
     if (h->avctx->debug & FF_DEBUG_PICT_INFO) {
         av_log(h->avctx, AV_LOG_DEBUG,
@@ -4389,7 +4390,6 @@ static void er_add_slice(H264Context *h, int startx, int starty,
     if (CONFIG_ERROR_RESILIENCE) {
         ERContext *er = &h->er;
 
-        er->ref_count = h->ref_count[0];
         ff_er_add_slice(er, startx, starty, endx, endy, status);
     }
 }