]> granicus.if.org Git - libvpx/commit
vp8: fix to address overflow in decoder.
authorJerome Jiang <jianj@google.com>
Tue, 7 Aug 2018 18:10:26 +0000 (11:10 -0700)
committerJerome Jiang <jianj@google.com>
Wed, 31 Oct 2018 18:42:28 +0000 (11:42 -0700)
commitf3a027a46de103c97f9f413fea003dc3d97e2cfc
treea90e3eb5b7f6e1da6e04f7907fd28623a4ef7a32
parent97e7da486242842f2636067ae6bbc7aa21405ea3
vp8: fix to address overflow in decoder.

Can't call internal error from the decoder thread.

Add vpx_internal_error_info to MACROBLOCKD. When corrupted frame
detected, the decoder thread returns to its own context and signal
completion of decoding for current frame.

The main decoding thread will detect error too and return error code to
decoding API call.

Each thread will signal end of decoding of the frame. Main thread waits
for the signal of all other threads to start decoding next frame.

BUG=875626,webm:1496
Change-Id: Icd05fbc558893a4e7d8532c1e7177e7550283a64
vp8/common/blockd.h
vp8/decoder/decodeframe.c
vp8/decoder/decoderthreading.h
vp8/decoder/onyxd_if.c
vp8/decoder/threading.c