[FFmpeg-cvslog] h264: reset next_output_pic earlier in start_frame()

Anton Khirnov git at videolan.org
Sun May 4 22:23:53 CEST 2014


ffmpeg | branch: release/1.1 | Anton Khirnov <anton at khirnov.net> | Wed Apr 23 22:26:40 2014 +0200| [945a1b7ab9b9df317e175e480a135a41e7e05b5c] | committer: Anton Khirnov

h264: reset next_output_pic earlier in start_frame()

In case start_frame() fails, this potentially invalid frame can still be
output to the caller.

Bug-Id: 672
Bug-Id: debian/741240
Bug-Id: ubuntu/1288206

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=945a1b7ab9b9df317e175e480a135a41e7e05b5c
---

 libavcodec/h264.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 702a272..fab23a5 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -1290,6 +1290,8 @@ int ff_h264_frame_start(H264Context *h)
     int i;
     const int pixel_shift = h->pixel_shift;
 
+    h->next_output_pic = NULL;
+
     if (ff_MPV_frame_start(s, s->avctx) < 0)
         return -1;
     ff_er_frame_start(s);
@@ -1341,8 +1343,6 @@ int ff_h264_frame_start(H264Context *h)
     s->current_picture_ptr->field_poc[0]     =
         s->current_picture_ptr->field_poc[1] = INT_MAX;
 
-    h->next_output_pic = NULL;
-
     assert(s->current_picture_ptr->long_ref == 0);
 
     return 0;



More information about the ffmpeg-cvslog mailing list