]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/h264_picture.c
Merge commit '8eb57dc9d5ea13c12573e0759da0f7e79825af98'
[ffmpeg] / libavcodec / h264_picture.c
index 127bc45c885ceaea79aa949858d1f21a3a5e860d..1880a58e50514c528405ab359728c0fa23334e25 100644 (file)
@@ -184,6 +184,7 @@ int ff_h264_field_end(H264Context *h, H264SliceContext *sl, int in_setup)
         ff_vdpau_h264_picture_complete(h);
 
 #if CONFIG_ERROR_RESILIENCE
+    av_assert0(sl == h->slice_ctx);
     /*
      * FIXME: Error handling code does not seem to support interlaced
      * when slices span multiple rows
@@ -196,7 +197,7 @@ int ff_h264_field_end(H264Context *h, H264SliceContext *sl, int in_setup)
      * past end by one (callers fault) and resync_mb_y != 0
      * causes problems for the first MB line, too.
      */
-    if (!FIELD_PICTURE(h) && h->current_slice && !h->sps.new) {
+    if (!FIELD_PICTURE(h) && h->current_slice && !h->sps.new && h->enable_er) {
         int use_last_pic = h->last_pic_for_ec.f.buf[0] && !sl->ref_count[0];
 
         ff_h264_set_erpic(&sl->er.cur_pic, h->cur_pic_ptr);