Go to the SVN repository for this file.
36 # pragma message("Assembler code may have bugs -- use at your own risk")
102 unsigned char FAR*beg;
103 unsigned char FAR*end;
104 unsigned char FAR*limit;
105 #ifdef INFLATE_STRICT 123 unsigned char FAR*from;
133 #ifdef INFLATE_STRICT 142lcode =
state->lencode;
143dcode =
state->distcode;
144lmask = (1U <<
state->lenbits) - 1;
145dmask = (1U <<
state->distbits) - 1;
147 #ifdef INFLATE_CHUNK_READ_64LE 148 #define REFILL() do { \ 149 Assert(bits < 64, "### Too many bits in inflate_fast."); \
150hold |= read64le(in) << bits; \
160 #ifdef INFLATE_CHUNK_READ_64LE 170here = lcode + (
hold& lmask);
171 #ifdef INFLATE_CHUNK_READ_64LE 172 if(here->
op== 0) {
174 "inflate: literal '%c'\n":
175 "inflate: literal 0x%02x\n", here->
val));
176*
out++ = (
unsignedchar)(here->
val);
179here = lcode + (
hold& lmask);
180 if(here->
op== 0) {
182 "inflate: 2nd literal '%c'\n":
183 "inflate: 2nd literal 0x%02x\n", here->
val));
184*
out++ = (
unsignedchar)(here->
val);
187here = lcode + (
hold& lmask);
192op = (unsigned)(here->
bits);
195op = (unsigned)(here->
op);
198 "inflate: literal '%c'\n":
199 "inflate: literal 0x%02x\n", here->
val));
200*
out++ = (
unsignedchar)(here->
val);
203 len= (unsigned)(here->
val);
206 #ifndef INFLATE_CHUNK_READ_64LE 212 len+= (unsigned)
hold& ((1U << op) - 1);
216 Tracevv((stderr,
"inflate: length %u\n",
len));
217 #ifndef INFLATE_CHUNK_READ_64LE 225here = dcode + (
hold& dmask);
227op = (unsigned)(here->
bits);
230op = (unsigned)(here->
op);
232dist = (unsigned)(here->
val);
237 #ifdef INFLATE_CHUNK_READ_64LE 248dist += (unsigned)
hold& ((1U << op) - 1);
249 #ifdef INFLATE_STRICT 251 strm->
msg= (
char*)
"invalid distance too far back";
258 Tracevv((stderr,
"inflate: distance %u\n", dist));
259op = (unsigned)(
out- beg);
265(
char*)
"invalid distance too far back";
269 #ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR 279}
while(--op >
whave);
337 else if((op & 64) == 0) {
338here = dcode + here->
val+ (
hold& ((1U << op) - 1));
342 strm->
msg= (
char*)
"invalid distance code";
347 else if((op & 64) == 0) {
348here = lcode + here->
val+ (
hold& ((1U << op) - 1));
352 Tracevv((stderr,
"inflate: end of block\n"));
357 strm->
msg= (
char*)
"invalid literal/length code";
static unsigned char FAR * chunkcopy_lapped_relaxed(unsigned char FAR *out, unsigned dist, unsigned len)
static unsigned char FAR * chunkunroll_relaxed(unsigned char FAR *out, unsigned FAR *dist, unsigned FAR *len)
static unsigned char FAR * chunkcopy_safe_ugly(unsigned char FAR *out, unsigned dist, unsigned len, unsigned char FAR *limit)
static unsigned char FAR * chunkcopy_safe(unsigned char FAR *out, const unsigned char FAR *from, unsigned len, unsigned char FAR *limit)
unsigned long inflate_holder_t
std::ofstream out("events_result.xml")
main entry point for tests
static DLIST_TYPE *DLIST_NAME() last(DLIST_LIST_TYPE *list)
void ZLIB_INTERNAL inflate_fast_chunk_(z_streamp strm, unsigned start)
std::istream & in(std::istream &in_, double &x_)
unsigned char FAR * window
struct internal_state * state
#define INFLATE_FAST_MIN_OUTPUT
#define INFLATE_FAST_MIN_INPUT
#define Assert(cond, msg)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4