shithub: libvpx

Download patch

ref: 4d391e8ed281c58bfa36e864050091f2934a7097
parent: c5fb0eb8d9a9cf0e593fbf06730f5b8501967009
author: John Koleszar <jkoleszar@google.com>
date: Tue Sep 21 07:54:36 EDT 2010

Don't reset mb clamping state during splitmv decoding

The MV decoding changes in c5fb0eb introduced a bug where the
macroblock clamping state was reset for each partition, so if an
earlier partition needed clamping but a subsequent one didn't,
the MB wouldn't receive clamping. Instead, the state is only
set during splitmv decoding, never cleared.

Change-Id: I224fe258493405ee0f6a04596acdb622c475e845

--- a/vp8/decoder/decodemv.c
+++ b/vp8/decoder/decodemv.c
@@ -394,7 +394,7 @@
                     break;
                 }
 
-                mbmi->need_to_clamp_mvs = (mv->col < mb_to_left_edge) ? 1 : 0;
+                mbmi->need_to_clamp_mvs |= (mv->col < mb_to_left_edge) ? 1 : 0;
                 mbmi->need_to_clamp_mvs |= (mv->col > mb_to_right_edge) ? 1 : 0;
                 mbmi->need_to_clamp_mvs |= (mv->row < mb_to_top_edge) ? 1 : 0;
                 mbmi->need_to_clamp_mvs |= (mv->row > mb_to_bottom_edge) ? 1 : 0;