1
0
Fork 0

Adding upstream version 1.1.

Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
Daniel Baumann 2025-02-20 16:49:35 +01:00
parent f0061db313
commit 8d95be3bd8
Signed by: daniel
GPG key ID: FBB4F0E80A80222F
23 changed files with 710 additions and 380 deletions

View file

@ -1,5 +1,5 @@
/* Lzlib - A compression library for lzip files
Copyright (C) 2009, 2010 Antonio Diaz Diaz.
Copyright (C) 2009, 2010, 2011 Antonio Diaz Diaz.
This library is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -35,6 +35,8 @@
#include "encoder.h"
using namespace Lzlib;
struct LZ_Encoder
{
long long partial_in_size;
@ -60,15 +62,6 @@ struct LZ_Encoder
};
bool verify_encoder( LZ_Encoder * const encoder )
{
if( !encoder ) return false;
if( !encoder->matchfinder || !encoder->lz_encoder )
{ encoder->lz_errno = LZ_bad_argument; return false; }
return true;
}
struct LZ_Decoder
{
long long partial_in_size;
@ -95,6 +88,17 @@ struct LZ_Decoder
};
namespace Lzlib {
bool verify_encoder( LZ_Encoder * const encoder )
{
if( !encoder ) return false;
if( !encoder->matchfinder || !encoder->lz_encoder )
{ encoder->lz_errno = LZ_bad_argument; return false; }
return true;
}
bool verify_decoder( struct LZ_Decoder * const decoder )
{
if( !decoder ) return false;
@ -103,6 +107,8 @@ bool verify_decoder( struct LZ_Decoder * const decoder )
return true;
}
} // end namespace Lzlib
const char * LZ_version() { return LZ_version_string; }
@ -387,7 +393,7 @@ int LZ_decompress_read( struct LZ_Decoder * const decoder,
if( d.seeking ) return 0;
if( d.lz_decoder && d.lz_decoder->member_finished() )
{
d.partial_in_size += d.lz_decoder->member_position();
d.partial_in_size += d.rdec->member_position();
d.partial_out_size += d.lz_decoder->data_position();
delete d.lz_decoder;
d.lz_decoder = 0;
@ -511,7 +517,7 @@ long long LZ_decompress_member_position( struct LZ_Decoder * const decoder )
{
if( !verify_decoder( decoder ) ) return -1;
if( decoder->lz_decoder )
return decoder->lz_decoder->member_position();
return decoder->rdec->member_position();
else return 0;
}
@ -520,7 +526,7 @@ long long LZ_decompress_total_in_size( struct LZ_Decoder * const decoder )
{
if( !verify_decoder( decoder ) ) return -1;
if( decoder->lz_decoder )
return decoder->partial_in_size + decoder->lz_decoder->member_position();
return decoder->partial_in_size + decoder->rdec->member_position();
return decoder->partial_in_size;
}