Report a proper error when bitstream wrongly requests prev_frame_mvs
Using an assert (which was compiled out) meant we got to a
use-after-free in bug 729.
BUG=aomedia:729
Change-Id: I4d0fa5e80322c395f94565c76e2285782c328505
diff --git a/av1/decoder/decodeframe.c b/av1/decoder/decodeframe.c
index 8db78b9..1e67971 100644
--- a/av1/decoder/decodeframe.c
+++ b/av1/decoder/decodeframe.c
@@ -5243,7 +5243,10 @@
#endif // CONFIG_EXT_REFS || CONFIG_TEMPMV_SIGNALING
#if CONFIG_TEMPMV_SIGNALING
- if (cm->use_prev_frame_mvs) assert(frame_can_use_prev_frame_mvs(cm));
+ if (cm->use_prev_frame_mvs && !frame_can_use_prev_frame_mvs(cm)) {
+ aom_internal_error(&cm->error, AOM_CODEC_CORRUPT_FRAME,
+ "Frame wrongly requests previous frame MVs");
+ }
#else
cm->use_prev_frame_mvs = !cm->error_resilient_mode && cm->prev_frame &&
#if CONFIG_FRAME_SUPERRES