aboutsummaryrefslogtreecommitdiff
path: root/archival/libarchive/bz/compress.c
diff options
context:
space:
mode:
Diffstat (limited to 'archival/libarchive/bz/compress.c')
-rw-r--r--archival/libarchive/bz/compress.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/archival/libarchive/bz/compress.c b/archival/libarchive/bz/compress.c
index f1393242d..f65076758 100644
--- a/archival/libarchive/bz/compress.c
+++ b/archival/libarchive/bz/compress.c
@@ -665,6 +665,8 @@ void sendMTFValues(EState* s)
static
void BZ2_compressBlock(EState* s, int is_last_block)
{
+ int32_t origPtr = origPtr;
+
if (s->nblock > 0) {
BZ_FINALISE_CRC(s->blockCRC);
s->combinedCRC = (s->combinedCRC << 1) | (s->combinedCRC >> 31);
@@ -672,7 +674,7 @@ void BZ2_compressBlock(EState* s, int is_last_block)
if (s->blockNo > 1)
s->posZ = s->zbits; // was: s->numZ = 0;
- BZ2_blockSort(s);
+ origPtr = BZ2_blockSort(s);
}
s->zbits = &((uint8_t*)s->arr2)[s->nblock];
@@ -713,7 +715,7 @@ void BZ2_compressBlock(EState* s, int is_last_block)
*/
bsW1_0(s);
- bsW(s, 24, s->origPtr);
+ bsW(s, 24, origPtr);
generateMTFValues(s);
sendMTFValues(s);
}