[Bug bzip2/27619] New: False error code returned by BZ2_bzBuffToBuffDecompress

tiberiuzbirnea at gmail dot com sourceware-bugzilla@sourceware.org
Sun Mar 21 15:50:28 GMT 2021


https://sourceware.org/bugzilla/show_bug.cgi?id=27619

            Bug ID: 27619
           Summary: False error code returned by
                    BZ2_bzBuffToBuffDecompress
           Product: bzip2
           Version: unspecified
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: bzip2
          Assignee: nobody at sourceware dot org
          Reporter: tiberiuzbirnea at gmail dot com
                CC: bzip2-devel at sourceware dot org
  Target Milestone: ---

Version: 1.0.8
File: bzlib.c
Function: BZ2_bzBuffToBuffDecompress
Line: 1342
Actual conent: return BZ_OUTBUFF_FULL;
Should be: return BZ_OK;

Comment:
In this function the "output_overflow_or_eof" label can be reached if
"BZ2_bzDecompress" returned BZ_OK. The branch with line 1342 is reached if
strm.avail_out == 0, so th output buffer is full but nothing has to be added
anymore.

Context:
I have written a wrapper class for this version. At compression method I`ve
allocated a buffer 4 bytes larger than it is presented in documentation

"To guarantee that the compressed data will fit in its buffer, allocate an
output buffer of size 1% larger than the uncompressed data, plus six hundred
extra bytes"

to store the uncompressed data size.

At decompression I've constantly receive BZ_OUTBUFF_FULL as a result, despite
strm.avail_out == 0.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Bzip2-devel mailing list