… | |
… | |
148 | if (1 |
148 | if (1 |
149 | #if INIT_HTAB |
149 | #if INIT_HTAB |
150 | && ref < ip /* the next test will actually take care of this, but this is faster */ |
150 | && ref < ip /* the next test will actually take care of this, but this is faster */ |
151 | #endif |
151 | #endif |
152 | && (off = ip - ref - 1) < MAX_OFF |
152 | && (off = ip - ref - 1) < MAX_OFF |
153 | && ip + 4 < in_end |
|
|
154 | && ref > (u8 *)in_data |
153 | && ref > (u8 *)in_data |
155 | && ref[2] == ip[2] |
154 | && ref[2] == ip[2] |
156 | #if STRICT_ALIGN |
155 | #if STRICT_ALIGN |
157 | && ((ref[1] << 8) | ref[0]) == ((ip[1] << 8) | ip[0]) |
156 | && ((ref[1] << 8) | ref[0]) == ((ip[1] << 8) | ip[0]) |
158 | #else |
157 | #else |
… | |
… | |
216 | *op++ = (off >> 8) + ( 7 << 5); |
215 | *op++ = (off >> 8) + ( 7 << 5); |
217 | *op++ = len - 7; |
216 | *op++ = len - 7; |
218 | } |
217 | } |
219 | |
218 | |
220 | *op++ = off; |
219 | *op++ = off; |
|
|
220 | |
221 | lit = 0; op++; /* start run */ |
221 | lit = 0; op++; /* start run */ |
222 | |
222 | |
223 | ip += len + 1; |
223 | ip += len + 1; |
224 | |
224 | |
225 | if (expect_false (ip >= in_end - 2)) |
225 | if (expect_false (ip >= in_end - 2)) |