Browse Source

png: set AVFrame flags/fields before calling setup_finished().

Fixes tsan warnings in fate-apng:

WARNING: ThreadSanitizer: data race (pid=51230)
  Read of size 4 at 0x7d50000042fc by main thread (mutexes: write M1000):
    #0 frame_copy_props frame.c:302 (ffmpeg:x86_64+0x1019a35d6)
[..]
  Previous write of size 4 at 0x7d50000042fc by thread T1 (mutexes: write M997):
    #0 decode_idat_chunk pngdec.c:708 (ffmpeg:x86_64+0x100f5562a)
tags/n3.4
Ronald S. Bultje 9 years ago
parent
commit
eff2861a75
1 changed files with 2 additions and 2 deletions
  1. +2
    -2
      libavcodec/pngdec.c

+ 2
- 2
libavcodec/pngdec.c View File

@@ -701,12 +701,12 @@ static int decode_idat_chunk(AVCodecContext *avctx, PNGDecContext *s,
if ((ret = ff_thread_get_buffer(avctx, &s->previous_picture, AV_GET_BUFFER_FLAG_REF)) < 0)
return ret;
}
ff_thread_finish_setup(avctx);

p->pict_type = AV_PICTURE_TYPE_I;
p->key_frame = 1;
p->interlaced_frame = !!s->interlace_type;

ff_thread_finish_setup(avctx);

/* compute the compressed row size */
if (!s->interlace_type) {
s->crow_size = s->row_size + 1;


Loading…
Cancel
Save