summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_write_bit_buffer.h
diff options
context:
space:
mode:
authorJim Bankoski <jimbankoski@google.com>2013-06-06 16:48:34 -0700
committerJim Bankoski <jimbankoski@google.com>2013-06-06 16:48:34 -0700
commitc003b97d11e714b5fdca6657e7f57413a9514007 (patch)
treea8170b0fad5b8235689a73d1642bbd4c0ced2d4a /vp9/encoder/vp9_write_bit_buffer.h
parentb4c4f6486244cc5e6817b37ef4a2e6983d0301c5 (diff)
downloadlibvpx-c003b97d11e714b5fdca6657e7f57413a9514007.tar
libvpx-c003b97d11e714b5fdca6657e7f57413a9514007.tar.gz
libvpx-c003b97d11e714b5fdca6657e7f57413a9514007.tar.bz2
libvpx-c003b97d11e714b5fdca6657e7f57413a9514007.zip
fix vp9_wb_write_bit uninitialized variable
This fixes a valgrind error. Change-Id: I0e1ef212ba09d65e3d71dd209f0786ae6530d2c8
Diffstat (limited to 'vp9/encoder/vp9_write_bit_buffer.h')
-rw-r--r--vp9/encoder/vp9_write_bit_buffer.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/vp9/encoder/vp9_write_bit_buffer.h b/vp9/encoder/vp9_write_bit_buffer.h
index 18cf40366..98ad3f608 100644
--- a/vp9/encoder/vp9_write_bit_buffer.h
+++ b/vp9/encoder/vp9_write_bit_buffer.h
@@ -26,8 +26,12 @@ static void vp9_wb_write_bit(struct vp9_write_bit_buffer *wb, int bit) {
const int off = wb->bit_offset;
const int p = off / CHAR_BIT;
const int q = CHAR_BIT - 1 - off % CHAR_BIT;
- wb->bit_buffer[p] &= ~(1 << q);
- wb->bit_buffer[p] |= bit << q;
+ if (q == CHAR_BIT -1) {
+ wb->bit_buffer[p] = bit << q;
+ } else {
+ wb->bit_buffer[p] &= ~(1 << q);
+ wb->bit_buffer[p] |= bit << q;
+ }
wb->bit_offset = off + 1;
}