diff --git a/libavcodec/elbg.c b/libavcodec/elbg.c index 130f5f634c..9f8ed221a4 100644 --- a/libavcodec/elbg.c +++ b/libavcodec/elbg.c @@ -299,8 +299,10 @@ static void do_shiftings(elbg_data *elbg) if (elbg->utility_inc[elbg->numCB-1] == 0) return; - idx[1] = get_high_utility_cell(elbg); idx[2] = get_closest_codebook(elbg, idx[0]); + do { + idx[1] = get_high_utility_cell(elbg); + } while (idx[1] == idx[0] || idx[1] == idx[2]); try_shift_candidate(elbg, idx); }