diff options
author | Anton Khirnov <anton@khirnov.net> | 2012-09-25 08:08:28 +0200 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2012-09-25 12:03:23 +0200 |
commit | 7a1a9dd56cb4cafad054bf6d65b21bb24d31c544 (patch) | |
tree | 24563e317c897ef431d5239d99b1f72373cd6fd8 /libavcodec | |
parent | c8ba8be27e3230c674f2b5a772cfa1da6d7172ab (diff) | |
download | ffmpeg-7a1a9dd56cb4cafad054bf6d65b21bb24d31c544.tar.gz |
pthread: make sure AVFrame.extended_data is set properly.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/pthread.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/pthread.c b/libavcodec/pthread.c index e0489acffb..0496257fde 100644 --- a/libavcodec/pthread.c +++ b/libavcodec/pthread.c @@ -377,6 +377,10 @@ static attribute_align_arg void *frame_worker_thread(void *arg) p->got_frame = 0; p->result = codec->decode(avctx, &p->frame, &p->got_frame, &p->avpkt); + /* many decoders assign whole AVFrames, thus overwriting extended_data; + * make sure it's set correctly */ + p->frame.extended_data = p->frame.data; + if (p->state == STATE_SETTING_UP) ff_thread_finish_setup(avctx); p->state = STATE_INPUT_READY; |