| Index: src/liblzma/lzma/lzma2_decoder.c
|
| ===================================================================
|
| --- src/liblzma/lzma/lzma2_decoder.c (revision 50504)
|
| +++ src/liblzma/lzma/lzma2_decoder.c (working copy)
|
| @@ -67,6 +67,10 @@
|
| const uint32_t control = in[*in_pos];
|
| ++*in_pos;
|
|
|
| + // End marker
|
| + if (control == 0x00)
|
| + return LZMA_STREAM_END;
|
| +
|
| if (control >= 0xE0 || control == 1) {
|
| // Dictionary reset implies that next LZMA chunk has
|
| // to set new properties.
|
| @@ -104,10 +108,6 @@
|
| &coder->options);
|
| }
|
| } else {
|
| - // End marker
|
| - if (control == 0x00)
|
| - return LZMA_STREAM_END;
|
| -
|
| // Invalid control values
|
| if (control > 2)
|
| return LZMA_DATA_ERROR;
|
| @@ -191,7 +191,6 @@
|
|
|
| case SEQ_COPY: {
|
| // Copy from input to the dictionary as is.
|
| - // FIXME Can copy too much?
|
| dict_write(dict, in, in_pos, in_size, &coder->compressed_size);
|
| if (coder->compressed_size != 0)
|
| return LZMA_OK;
|
|
|