summaryrefslogtreecommitdiffstats
path: root/libavcodec/pthread.c
diff options
context:
space:
mode:
authorLuca Barbato <[email protected]>2014-08-08 18:07:43 +0200
committerLuca Barbato <[email protected]>2014-08-09 04:01:15 +0200
commit0ab76ddf313eeab70d06619ae0376fd7dd40761b (patch)
tree5b9cc612dea64c831a020c831ddd998c709cb796 /libavcodec/pthread.c
parent042c25f54bd25b52d2936b822be026450971a82d (diff)
avcodec: Introduce ff_get_buffer
Validate the image size there as is done in the other release branches. Bug-Id: CVE-2011-3935 Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Diffstat (limited to 'libavcodec/pthread.c')
-rw-r--r--libavcodec/pthread.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libavcodec/pthread.c b/libavcodec/pthread.c
index 65c6e2fbe3..345456ce6e 100644
--- a/libavcodec/pthread.c
+++ b/libavcodec/pthread.c
@@ -573,7 +573,7 @@ static int submit_packet(PerThreadContext *p, AVPacket *avpkt)
pthread_cond_wait(&p->progress_cond, &p->progress_mutex);
if (p->state == STATE_GET_BUFFER) {
- p->result = p->avctx->get_buffer(p->avctx, p->requested_frame);
+ p->result = p-ff_get_buffer(p->avctx, p->requested_frame);
p->state = STATE_SETTING_UP;
pthread_cond_signal(&p->progress_cond);
}
@@ -919,7 +919,7 @@ int ff_thread_get_buffer(AVCodecContext *avctx, AVFrame *f)
if (!(avctx->active_thread_type&FF_THREAD_FRAME)) {
f->thread_opaque = NULL;
- return avctx->get_buffer(avctx, f);
+ return ff_get_buffer(avctx, f);
}
if (p->state != STATE_SETTING_UP &&
@@ -941,7 +941,7 @@ int ff_thread_get_buffer(AVCodecContext *avctx, AVFrame *f)
if (avctx->thread_safe_callbacks ||
avctx->get_buffer == avcodec_default_get_buffer) {
- err = avctx->get_buffer(avctx, f);
+ err = ff_get_buffer(avctx, f);
} else {
p->requested_frame = f;
p->state = STATE_GET_BUFFER;