Commit a0c1638f authored by David Barker's avatar David Barker Committed by Debargha Mukherjee

Fix a logic error with cb4x4 disabled

In the case where:
* global-motion and ext-inter are both enabled
* cb4x4 is disabled
* We have an 8x8 macroblock which is partitioned into smaller blocks

the function is_nontrans_global_motion has a bug where it will
always act as if that macroblock does not use global motion. This
patch fixes that logic bug.

Change-Id: I712d7bab6d646726d97aa37630399b4bcbee7757
parent 073590e4
......@@ -1480,11 +1480,10 @@ static INLINE int is_nontrans_global_motion(const MACROBLOCKD *xd) {
#endif // CONFIG_EXT_INTER
} else {
#if CONFIG_EXT_INTER
if (mi->bmi[0].as_mode != ZEROMV || mi->bmi[1].as_mode != ZEROMV ||
mi->bmi[2].as_mode != ZEROMV || mi->bmi[3].as_mode != ZEROMV ||
mi->bmi[0].as_mode != ZERO_ZEROMV ||
mi->bmi[1].as_mode != ZERO_ZEROMV ||
mi->bmi[2].as_mode != ZERO_ZEROMV || mi->bmi[3].as_mode != ZERO_ZEROMV)
if ((mi->bmi[0].as_mode != ZEROMV && mi->bmi[0].as_mode != ZERO_ZEROMV) ||
(mi->bmi[1].as_mode != ZEROMV && mi->bmi[1].as_mode != ZERO_ZEROMV) ||
(mi->bmi[2].as_mode != ZEROMV && mi->bmi[2].as_mode != ZERO_ZEROMV) ||
(mi->bmi[3].as_mode != ZEROMV && mi->bmi[3].as_mode != ZERO_ZEROMV))
return 0;
#else
if (mi->bmi[0].as_mode != ZEROMV || mi->bmi[1].as_mode != ZEROMV ||
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment