diff options
| author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-03-02 18:56:23 +0000 |
|---|---|---|
| committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-03-02 18:56:23 +0000 |
| commit | 444639cc2134d483bf0845416e9b6ce8935af795 (patch) | |
| tree | 1f35c5c6c57a565b06de6be485bffa4dee7df084 | |
| parent | c3fff877e1c7c3f2aff2833d5f5e5b7adc95ecd6 (diff) | |
| download | busybox-w32-444639cc2134d483bf0845416e9b6ce8935af795.tar.gz busybox-w32-444639cc2134d483bf0845416e9b6ce8935af795.tar.bz2 busybox-w32-444639cc2134d483bf0845416e9b6ce8935af795.zip | |
unlzma: save a few more bytes, and maybe even a bit faster now
| -rw-r--r-- | archival/libunarchive/decompress_unlzma.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/archival/libunarchive/decompress_unlzma.c b/archival/libunarchive/decompress_unlzma.c index 5bf4de2bd..aea0c8d94 100644 --- a/archival/libunarchive/decompress_unlzma.c +++ b/archival/libunarchive/decompress_unlzma.c | |||
| @@ -306,13 +306,9 @@ unpack_lzma_stream(int src_fd, int dst_fd) | |||
| 306 | match_byte <<= 1; | 306 | match_byte <<= 1; |
| 307 | bit = match_byte & 0x100; | 307 | bit = match_byte & 0x100; |
| 308 | prob_lit = prob + 0x100 + bit + mi; | 308 | prob_lit = prob + 0x100 + bit + mi; |
| 309 | if (rc_get_bit(rc, prob_lit, &mi)) { | 309 | bit ^= (rc_get_bit(rc, prob_lit, &mi) << 8); /* 0x100 or 0 */ |
| 310 | if (!bit) | 310 | if (bit) |
| 311 | break; | 311 | break; |
| 312 | } else { | ||
| 313 | if (bit) | ||
| 314 | break; | ||
| 315 | } | ||
| 316 | } while (mi < 0x100); | 312 | } while (mi < 0x100); |
| 317 | } | 313 | } |
| 318 | while (mi < 0x100) { | 314 | while (mi < 0x100) { |
