Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Please login to access the resource
SUSE:SLE-12-SP1:GA
libjpeg-turbo.5858
libjpeg-turbo-1.3.0-tiff-ojpeg.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File libjpeg-turbo-1.3.0-tiff-ojpeg.patch of Package libjpeg-turbo.5858
--- jdhuff.c +++ jdhuff.c @@ -649,3 +649,35 @@ entropy->dc_derived_tbls[i] = entropy->ac_derived_tbls[i] = NULL; } } +/* + * BEWARE OF KLUDGE: This subroutine is a hack for decoding illegal JPEG-in- + * TIFF encapsulations produced by Microsoft's Wang Imaging + * for Windows application with the public-domain TIFF Library. Based upon an + * examination of selected output files, this program apparently divides a JPEG + * bit-stream into consecutive horizontal TIFF "strips", such that the JPEG + * encoder's/decoder's DC coefficients for each image component are reset before + * each "strip". Moreover, a "strip" is not necessarily encoded in a multiple + * of 8 bits, so one must sometimes discard 1-7 bits at the end of each "strip" + * for alignment to the next input-Byte storage boundary. IJG JPEG Library + * decoder state is not normally exposed to client applications, so this sub- + * routine provides the TIFF Library with a "hook" to make these corrections. + * It should be called after "jpeg_start_decompress()" and before + * "jpeg_finish_decompress()", just before decoding each "strip" using + * "jpeg_read_raw_data()" or "jpeg_read_scanlines()". + * + * This kludge is not sanctioned or supported by the Independent JPEG Group, and + * future changes to the IJG JPEG Library might invalidate it. Do not send bug + * reports about this code to IJG developers. Instead, contact the author for + * advice: Scott B. Marovich <marovich@hpl.hp.com>, Hewlett-Packard Labs, 6/01. + */ +GLOBAL(void) +jpeg_reset_huff_decode (register j_decompress_ptr cinfo,register float *refbw) +{ register huff_entropy_ptr entropy = (huff_entropy_ptr)cinfo->entropy; + register int ci = 0; + + /* Re-initialize DC predictions */ + do entropy->saved.last_dc_val[ci] = -refbw[ci << 1]; + while (++ci < cinfo->comps_in_scan); + /* Discard encoded input bits, up to the next Byte boundary */ + entropy->bitstate.bits_left &= ~7; +}
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor