diff options
author | hkuang <hkuang@google.com> | 2014-02-25 17:54:33 -0800 |
---|---|---|
committer | hkuang <hkuang@google.com> | 2014-02-25 17:54:33 -0800 |
commit | 1c4e449133c185df066633d0782aba390782c870 (patch) | |
tree | 4a27e4425231fc6e53a16cac49d426cc21098b44 /vp9/common | |
parent | 25e55526301eba7d6e5c68e25402e9b2102976d8 (diff) | |
download | libvpx-1c4e449133c185df066633d0782aba390782c870.tar libvpx-1c4e449133c185df066633d0782aba390782c870.tar.gz libvpx-1c4e449133c185df066633d0782aba390782c870.tar.bz2 libvpx-1c4e449133c185df066633d0782aba390782c870.zip |
Fix a bug in intra prediction due to change in
25e55526301eba7d6e5c68e25402e9b2102976d8.
Change-Id: I17ac67c3ced91ad4f057b296f7e8dc86a3389f26
Diffstat (limited to 'vp9/common')
-rw-r--r-- | vp9/common/vp9_reconintra.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/vp9/common/vp9_reconintra.c b/vp9/common/vp9_reconintra.c index 96ba3e464..71a41a9de 100644 --- a/vp9/common/vp9_reconintra.c +++ b/vp9/common/vp9_reconintra.c @@ -382,34 +382,34 @@ static void build_intra_predictors(const MACROBLOCKD *xd, const uint8_t *ref, /* slower path if the block needs border extension */ if (x0 + 2 * bs <= frame_width) { if (right_available && bs == 4) { - vpx_memcpy(above_row - 1, above_ref - 1, 2 * bs + 1); + vpx_memcpy(above_row, above_ref, 2 * bs); } else { - vpx_memcpy(above_row - 1, above_ref - 1, bs + 1); + vpx_memcpy(above_row, above_ref, bs); vpx_memset(above_row + bs, above_row[bs - 1], bs); } } else if (x0 + bs <= frame_width) { const int r = frame_width - x0; if (right_available && bs == 4) { - vpx_memcpy(above_row - 1, above_ref - 1, r + 1); + vpx_memcpy(above_row, above_ref, r); vpx_memset(above_row + r, above_row[r - 1], x0 + 2 * bs - frame_width); } else { - vpx_memcpy(above_row - 1, above_ref - 1, bs + 1); + vpx_memcpy(above_row, above_ref, bs); vpx_memset(above_row + bs, above_row[bs - 1], bs); } } else if (x0 <= frame_width) { const int r = frame_width - x0; if (right_available && bs == 4) { - vpx_memcpy(above_row - 1, above_ref - 1, r + 1); + vpx_memcpy(above_row, above_ref, r); vpx_memset(above_row + r, above_row[r - 1], x0 + 2 * bs - frame_width); } else { - vpx_memcpy(above_row - 1, above_ref - 1, r + 1); + vpx_memcpy(above_row, above_ref, r); vpx_memset(above_row + r, above_row[r - 1], x0 + 2 * bs - frame_width); } - above_row[-1] = left_available ? above_ref[-1] : 129; } + above_row[-1] = left_available ? above_ref[-1] : 129; } else { /* faster path if the block does not need extension */ if (bs == 4 && right_available && left_available) { |