Release Notes: This is a security-critical bugfix release which remains API and ABI backwards-compatible to version 2.0. Users who decompress JBIG data from untrusted sources should upgrade. It fixes a buffer overflow vulnerability in the jbig.c decoder (CVE-2013-6369), a bug in the way jbig.c processes the option DPPRIV=1 (not usually used in practice), and the ability of a specially-crafted input file to force the jbig85.c decoder into an endless loop.
Release Notes: This major release adds a much more lightweight jbig85.c variant of the library that implements only the black/white fax profile (single bit per pixel, no progressive coding with multiple resolution layers) specified in ITU-T T.85. It keeps only 3 lines of the uncompressed image in memory at any time, and only a few bytes of compressed data, and leaves all memory allocation to the caller. This benefits in particular embedded low-memory applications, and those processing extremely large images. (There are also extensions to the original jbig.c library and its command-line tools.)
Release Notes: There are various small changes to reduce the risk of 32-bit unsigned integer overflows when dealing with extremely large images; more robust treatment of L0 = 0xffffffff; a minor API modification in jbg_enc_options(): parameter l0 has changed from type long to unsigned long, and the previous value now remains unchanged when l0 == 0 (was: l0 < 0); many type casts have been added such that the C source code is now also compilable as C++.
Release Notes: The maximum adaptive template pixel offset was increased to MX=127. A new function jbg_newlen() can now be used to scan an entire in-memory BIE for NEWLEN marker segments, and will update the preliminary image height given in the header accordingly. Applying this preprocessing step enables the decoder to handle even JBIG data streams from fax machines that start transmission before they know the overall height of the image (an arachaic mode of operation permitted by the ITU-T T.85 profile).
Release Notes: A typo in the stripe number calculation that caused the encoder and decoder to fail on certain image sizes has been fixed.
Release Notes: Several bugs have been fixed in jbg_split_planes and jbg_dec_merge_planes. These bugs caused a failure for more than eight bits per pixel. The PBM converters can now handle up to 32 bits per pixel.