From dcf747d620019ff24772e4406044570f8e7c1928 Mon Sep 17 00:00:00 2001 From: David Shaw Date: Tue, 18 Nov 2003 02:52:35 +0000 Subject: [PATCH] * options.h, g10.c (main), compress-bz2.c (init_uncompress): Add --bz2-compress-lowmem to set bzlib "small" flag for low memory (but slow) decompression. --- g10/ChangeLog | 6 ++++++ g10/compress-bz2.c | 2 +- g10/g10.c | 3 +++ g10/options.h | 1 + 4 files changed, 11 insertions(+), 1 deletion(-) diff --git a/g10/ChangeLog b/g10/ChangeLog index 38f446c39..c905db4d6 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,9 @@ +2003-11-17 David Shaw + + * options.h, g10.c (main), compress-bz2.c (init_uncompress): Add + --bz2-compress-lowmem to set bzlib "small" flag for low memory + (but slow) decompression. + 2003-11-15 David Shaw * compress.c (init_compress): Remove compress level 10 trick, diff --git a/g10/compress-bz2.c b/g10/compress-bz2.c index a81288e44..139a39997 100644 --- a/g10/compress-bz2.c +++ b/g10/compress-bz2.c @@ -100,7 +100,7 @@ init_uncompress( compress_filter_context_t *zfx, bz_stream *bzs ) { int rc; - if((rc=BZ2_bzDecompressInit(bzs,0,0))!=BZ_OK) + if((rc=BZ2_bzDecompressInit(bzs,0,opt.bz2_compress_lowmem))!=BZ_OK) log_fatal("bz2lib problem: %d\n",rc); zfx->inbufsize = 2048; diff --git a/g10/g10.c b/g10/g10.c index 6509b3e0e..f449dde66 100644 --- a/g10/g10.c +++ b/g10/g10.c @@ -192,6 +192,7 @@ enum cmd_and_opt_values oCompressAlgo, oCompressLevel, oBZ2CompressLevel, + oBZ2CompressLowmem, oPasswdFD, #ifdef __riscos__ oPasswdFile, @@ -423,6 +424,7 @@ static ARGPARSE_OPTS opts[] = { { oCompress, NULL, 1, N_("|N|set compress level N (0 disables)") }, { oCompressLevel, "compress-level", 1, "@" }, { oBZ2CompressLevel, "bzip2-compress-level", 1, "@" }, + { oBZ2CompressLowmem, "bzip2-compress-lowmem", 0, "@" }, { oTextmodeShort, NULL, 0, "@"}, { oTextmode, "textmode", 0, N_("use canonical text mode")}, { oNoTextmode, "no-textmode", 0, "@"}, @@ -1790,6 +1792,7 @@ main( int argc, char **argv ) break; case oCompressLevel: opt.compress_level = pargs.r.ret_int; break; case oBZ2CompressLevel: opt.bz2_compress_level = pargs.r.ret_int; break; + case oBZ2CompressLowmem: opt.bz2_compress_lowmem=1; break; case oPasswdFD: pwfd = iobuf_translate_file_handle (pargs.r.ret_int, 0); opt.use_agent = 0; diff --git a/g10/options.h b/g10/options.h index 391adc862..f7b3a8f7e 100644 --- a/g10/options.h +++ b/g10/options.h @@ -70,6 +70,7 @@ struct { int compress_algo; int compress_level; int bz2_compress_level; + int bz2_compress_lowmem; const char *def_secret_key; char *def_recipient; int def_recipient_self;