summaryrefslogtreecommitdiffstats
path: root/main.c
diff options
context:
space:
mode:
authorDaniel Baumann <mail@daniel-baumann.ch>2015-11-07 14:06:44 +0000
committerDaniel Baumann <mail@daniel-baumann.ch>2015-11-07 14:06:44 +0000
commit8115a3e25cf2f14818bf58a5285b113efd18e0bb (patch)
tree4e7b98c1a70c26289b3f7db2e460959da3e1eb90 /main.c
parentAdding upstream version 1.7~pre1. (diff)
downloadlzlib-upstream/1.7_rc1.tar.xz
lzlib-upstream/1.7_rc1.zip
Adding upstream version 1.7~rc1.upstream/1.7_rc1
Signed-off-by: Daniel Baumann <mail@daniel-baumann.ch>
Diffstat (limited to 'main.c')
-rw-r--r--main.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/main.c b/main.c
index 1c9d29c..cab15b5 100644
--- a/main.c
+++ b/main.c
@@ -289,11 +289,15 @@ static unsigned long long getnum( const char * const ptr,
static int get_dict_size( const char * const arg )
{
char * tail;
- int bits = strtol( arg, &tail, 0 );
+ int dictionary_size;
+ const int bits = strtol( arg, &tail, 0 );
if( bits >= LZ_min_dictionary_bits() &&
bits <= LZ_max_dictionary_bits() && *tail == 0 )
return ( 1 << bits );
- return getnum( arg, LZ_min_dictionary_size(), LZ_max_dictionary_size() );
+ dictionary_size = getnum( arg, LZ_min_dictionary_size(),
+ LZ_max_dictionary_size() );
+ if( dictionary_size == 65535 ) ++dictionary_size;
+ return dictionary_size;
}
@@ -836,7 +840,7 @@ int main( const int argc, const char * const argv[] )
{ 3 << 23, 132 }, /* -8 */
{ 1 << 25, 273 } }; /* -9 */
struct Lzma_options encoder_options = option_mapping[6]; /* default = "-6" */
- const unsigned long long max_member_size = 0x0100000000000000ULL;
+ const unsigned long long max_member_size = 0x0008000000000000ULL;
const unsigned long long max_volume_size = 0x4000000000000000ULL;
unsigned long long member_size = max_member_size;
unsigned long long volume_size = 0;