Mercurial > hg > dmlib
comparison src/dmzlib.c @ 1003:7a0c2fe22e60
Rename a function argument.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 01 Mar 2015 03:09:24 +0200 |
parents | 2da97be2aa1f |
children | 2abca9bbfa41 |
comparison
equal
deleted
inserted
replaced
1002:2da97be2aa1f | 1003:7a0c2fe22e60 |
---|---|
270 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, | 270 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, |
271 10, 11, 11, 12, 12, 13, 13 | 271 10, 11, 11, 12, 12, 13, 13 |
272 }; | 272 }; |
273 | 273 |
274 | 274 |
275 static int dmZLibParseHuffmanBlock(DMZLibContext * a) | 275 static int dmZLibParseHuffmanBlock(DMZLibContext * ctx) |
276 { | 276 { |
277 Uint8 *zout = a->zout; | 277 Uint8 *zout = ctx->zout; |
278 for (;;) | 278 for (;;) |
279 { | 279 { |
280 int z, ret; | 280 int z, ret; |
281 if ((ret = dmZLibHuffmanDecode(a, &a->zlength, &z)) != DMERR_OK) | 281 if ((ret = dmZLibHuffmanDecode(ctx, &ctx->zlength, &z)) != DMERR_OK) |
282 return ret; | 282 return ret; |
283 | 283 |
284 if (z < 256) | 284 if (z < 256) |
285 { | 285 { |
286 if (zout >= a->zoutEnd) | 286 if (zout >= ctx->zoutEnd) |
287 { | 287 { |
288 if ((ret = dmZLibExpand(a, zout, 1)) != DMERR_OK) | 288 if ((ret = dmZLibExpand(ctx, zout, 1)) != DMERR_OK) |
289 return ret; | 289 return ret; |
290 | 290 |
291 zout = a->zout; | 291 zout = ctx->zout; |
292 } | 292 } |
293 *zout++ = (Uint8) z; | 293 *zout++ = (Uint8) z; |
294 } | 294 } |
295 else | 295 else |
296 { | 296 { |
297 Uint8 *p; | 297 Uint8 *p; |
298 int len, dist; | 298 int len, dist; |
299 if (z == 256) | 299 if (z == 256) |
300 { | 300 { |
301 a->zout = zout; | 301 ctx->zout = zout; |
302 return DMERR_OK; | 302 return DMERR_OK; |
303 } | 303 } |
304 z -= 257; | 304 z -= 257; |
305 | 305 |
306 len = dm_zlib_length_base[z]; | 306 len = dm_zlib_length_base[z]; |
307 if (dm_zlib_length_extra[z]) | 307 if (dm_zlib_length_extra[z]) |
308 len += dmZReceive(a, dm_zlib_length_extra[z]); | 308 len += dmZReceive(ctx, dm_zlib_length_extra[z]); |
309 | 309 |
310 if ((ret = dmZLibHuffmanDecode(a, &a->zdistance, &z)) != DMERR_OK) | 310 if ((ret = dmZLibHuffmanDecode(ctx, &ctx->zdistance, &z)) != DMERR_OK) |
311 return ret; | 311 return ret; |
312 | 312 |
313 dist = dm_zlib_dist_base[z]; | 313 dist = dm_zlib_dist_base[z]; |
314 if (dm_zlib_dist_extra[z]) | 314 if (dm_zlib_dist_extra[z]) |
315 dist += dmZReceive(a, dm_zlib_dist_extra[z]); | 315 dist += dmZReceive(ctx, dm_zlib_dist_extra[z]); |
316 | 316 |
317 if (zout - a->zoutStart < dist) | 317 if (zout - ctx->zoutStart < dist) |
318 { | 318 { |
319 return dmError(DMERR_DATA_ERROR, | 319 return dmError(DMERR_DATA_ERROR, |
320 "Bad Huffman block distance.\n"); | 320 "Bad Huffman block distance.\n"); |
321 } | 321 } |
322 | 322 |
323 if (zout + len > a->zoutEnd) | 323 if (zout + len > ctx->zoutEnd) |
324 { | 324 { |
325 if ((ret = dmZLibExpand(a, zout, len)) != DMERR_OK) | 325 if ((ret = dmZLibExpand(ctx, zout, len)) != DMERR_OK) |
326 return ret; | 326 return ret; |
327 zout = a->zout; | 327 zout = ctx->zout; |
328 } | 328 } |
329 p = (Uint8 *) (zout - dist); | 329 p = (Uint8 *) (zout - dist); |
330 if (dist == 1) | 330 if (dist == 1) |
331 { // run of one byte; common in images. | 331 { // run of one byte; common in images. |
332 Uint8 v = *p; | 332 Uint8 v = *p; |