Closed GoogleCodeExporter closed 9 years ago
The problem is here [1]. With a 32-bit build the code will over accumulate
before writing, e.g., used=16 n_bits=33:
279 bw->bits_ |= (vp8l_atype_t)bits << bw->used_;
280 bw->used_ += n_bits;
281 if (bw->used_ > VP8L_WRITER_BITS) {
[1]
https://gerrit.chromium.org/gerrit/gitweb?p=webm/libwebp.git;a=blob;f=src/utils/
bit_writer.c;h=07465c10eeaa33bf6f9134f769ea1f81aa1c3d23;hb=HEAD#l280
Original comment by jz...@google.com
on 21 May 2014 at 2:08
indeed, adding the following assert at line bit_writer.c:281
assert(bw->used_ <= 8 * (int)sizeof(bw->bits_));
makes this repro case crash. Will follow up with a patch...
Original comment by s...@google.com
on 21 May 2014 at 5:29
should be fixed by https://gerrit.chromium.org/gerrit/#/c/70230/
Original comment by pascal.m...@gmail.com
on 21 May 2014 at 11:48
patch submitted, fix verified.
Original comment by pascal.m...@gmail.com
on 22 May 2014 at 5:44
Original issue reported on code.google.com by
jz...@google.com
on 21 May 2014 at 2:07