Commit bcb5415b3b for aom
commit bcb5415b3b036a08690f81c2f125865dcb18a251
Author: Marco Paniconi <marpan@google.com>
Date: Tue Mar 31 10:26:58 2026 -0700
Fix unitialized variable in nonrd_pickmode
Due to: a04795584
Before using the variable search_state->frame_mv[][ref_frame]
we need to check that search_state->use_ref_frame_mask[ref_frame]
is true (which sets the frame_mv).
Fixes the nightly valgrind test.
Change-Id: I647a4db968e53f654f1a81b981c3379f779f709d
diff --git a/av1/encoder/nonrd_pickmode.c b/av1/encoder/nonrd_pickmode.c
index 942b8ab23a..3835599b86 100644
--- a/av1/encoder/nonrd_pickmode.c
+++ b/av1/encoder/nonrd_pickmode.c
@@ -2498,6 +2498,9 @@ static AOM_FORCE_INLINE bool skip_inter_mode_nonrd(
(*this_mode != GLOBALMV || *ref_frame != LAST_FRAME))
return true;
+ // Skip the mode if use reference frame mask flag is not set.
+ if (!search_state->use_ref_frame_mask[*ref_frame]) return true;
+
*force_mv_inter_layer = 0;
if (cpi->ppi->use_svc && svc->spatial_layer_id > 0 &&
((*ref_frame == LAST_FRAME && svc->skip_mvsearch_last) ||
@@ -2523,9 +2526,6 @@ static AOM_FORCE_INLINE bool skip_inter_mode_nonrd(
return false;
}
- // Skip the mode if use reference frame mask flag is not set.
- if (!search_state->use_ref_frame_mask[*ref_frame]) return true;
-
// Don't skip non_last references if LAST is not used a reference.
if (!(cpi->ref_frame_flags & AOM_LAST_FLAG) &&
(*ref_frame == GOLDEN_FRAME || *ref_frame == ALTREF_FRAME))