From c003b97d11e714b5fdca6657e7f57413a9514007 Mon Sep 17 00:00:00 2001
From: Jim Bankoski <jimbankoski@google.com>
Date: Thu, 6 Jun 2013 16:48:34 -0700
Subject: [PATCH] fix vp9_wb_write_bit uninitialized variable

This fixes a valgrind error.

Change-Id: I0e1ef212ba09d65e3d71dd209f0786ae6530d2c8
---
 vp9/encoder/vp9_write_bit_buffer.h | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/vp9/encoder/vp9_write_bit_buffer.h b/vp9/encoder/vp9_write_bit_buffer.h
index 18cf403669..98ad3f608d 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;
 }
 
-- 
GitLab