On Tue, 25 Apr 2017 23:52:04 +0700 Muhammad Faiz <mfc...@gmail.com> wrote:
> when frame is received, not from other threads. > > Should fix fate failure with THREADS>=4: > make fate-h264-attachment-631 THREADS=4 > > Signed-off-by: Muhammad Faiz <mfc...@gmail.com> > --- > libavcodec/pthread_frame.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/libavcodec/pthread_frame.c b/libavcodec/pthread_frame.c > index 13d6828..c452ed7 100644 > --- a/libavcodec/pthread_frame.c > +++ b/libavcodec/pthread_frame.c > @@ -547,6 +547,10 @@ int ff_thread_decode_frame(AVCodecContext *avctx, > > fctx->next_finished = finished; > > + /* if frame is returned, properly set err from the thread that return > frame */ > + if (*got_picture_ptr) > + err = p->result; > + > /* return the size of the consumed packet if no error occurred */ > if (err >= 0) > err = avpkt->size; Well, the logic confuses me. Does this override an earlier set err value? Could err be set to the correct value in the first place (inside of the loop)? _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel