Support overwriting an arbitrary number of literal bits.
Overwriting was only guaranteed to work if a whole number
of bytes were being overwritten.
Change-Id: I5e72cb337ec6ff691e93288de9f751b583654a17
diff --git a/aom_dsp/bitwriter_buffer.c b/aom_dsp/bitwriter_buffer.c
index 9d6a0da..993bcfa 100644
--- a/aom_dsp/bitwriter_buffer.c
+++ b/aom_dsp/bitwriter_buffer.c
@@ -23,12 +23,8 @@
const int off = (int)wb->bit_offset;
const int p = off / CHAR_BIT;
const int q = CHAR_BIT - 1 - off % CHAR_BIT;
- 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_buffer[p] &= ~(1 << q);
+ wb->bit_buffer[p] |= bit << q;
wb->bit_offset = off + 1;
}