mirror of
https://github.com/webmproject/libwebp.git
synced 2024-12-27 06:08:21 +01:00
Fix for thread race heap-use-after-free
BUG=webp:385
Change-Id: I3a300b45ccae33470888cf2e35a7e937579c9409
(cherry picked from commit 569001f19f
)
This commit is contained in:
parent
dad31750e3
commit
a0b85e4a36
@ -283,10 +283,8 @@ static void RestoreContext(const MBContext* context, VP8Decoder* const dec,
|
|||||||
|
|
||||||
static VP8StatusCode IDecError(WebPIDecoder* const idec, VP8StatusCode error) {
|
static VP8StatusCode IDecError(WebPIDecoder* const idec, VP8StatusCode error) {
|
||||||
if (idec->state_ == STATE_VP8_DATA) {
|
if (idec->state_ == STATE_VP8_DATA) {
|
||||||
VP8Io* const io = &idec->io_;
|
// Synchronize the thread, clean-up and check for errors.
|
||||||
if (io->teardown != NULL) {
|
VP8ExitCritical((VP8Decoder*)idec->dec_, &idec->io_);
|
||||||
io->teardown(io);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
idec->state_ = STATE_ERROR;
|
idec->state_ = STATE_ERROR;
|
||||||
return error;
|
return error;
|
||||||
|
Loading…
Reference in New Issue
Block a user