summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Brown2015-02-26 10:46:59 +0100
committerMichael Brown2015-02-26 10:54:05 +0100
commit9cdf68a2190a050a0b60d4ad6f51ec88c1b1b296 (patch)
tree1d53f47a6da08433e38a47b48ad8ec6f03c0c168 /src
parent[dhcp] Extract timing parameters out to config/dhcp.h (diff)
downloadipxe-9cdf68a2190a050a0b60d4ad6f51ec88c1b1b296.tar.gz
ipxe-9cdf68a2190a050a0b60d4ad6f51ec88c1b1b296.tar.xz
ipxe-9cdf68a2190a050a0b60d4ad6f51ec88c1b1b296.zip
[zbin] Perform extra normalisation after completing decompression
LZMA performs an extra normalisation after decompression is complete, which does not affect the output but may consume an extra byte from the input (and so may affect which byte is identified as being the start of the next block). Reported-by: Robin Smidsrød <robin@smidsrod.no> Tested-by: Robin Smidsrød <robin@smidsrod.no> Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src')
-rw-r--r--src/arch/i386/prefix/unlzma.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/arch/i386/prefix/unlzma.S b/src/arch/i386/prefix/unlzma.S
index f6c74286..b0588fda 100644
--- a/src/arch/i386/prefix/unlzma.S
+++ b/src/arch/i386/prefix/unlzma.S
@@ -885,6 +885,7 @@ decompress:
1: /* Decompress until we reach end of buffer */
call lzma_decode
jnc 1b
+ call rc_normalise
print_character '\n'
/* Undo BCJ filter */
pushl %esi