diff options
author | Janne Grunau <janne-vlc@jannau.net> | 2018-11-19 00:02:47 +0300 |
---|---|---|
committer | Janne Grunau <janne-vlc@jannau.net> | 2018-11-19 00:21:28 +0300 |
commit | c496fab4abbc8ec28fa575d38119d35eaffb91bb (patch) | |
tree | a8db943538570cf592700ec89b0503794ac7b50b | |
parent | 4aa0363a342613b41034911ba5a5d285bf9c7335 (diff) |
decode: check once per tile sb row for symbol decoder overreads
-rw-r--r-- | src/decode.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/decode.c b/src/decode.c index 56e8bc0..89cda0a 100644 --- a/src/decode.c +++ b/src/decode.c @@ -2374,6 +2374,9 @@ int dav1d_decode_tile_sbrow(Dav1dTileContext *const t) { return 0; } + // error out on symbol decoder overread + if (ts->msac.cnt < -15) return 1; + if (c->n_fc > 1 && f->frame_hdr.use_ref_frame_mvs) { for (int n = 0; n < 7; n++) if (dav1d_thread_picture_wait(&f->refp[n], 4 * (t->by + sb_step), |