summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2011-04-11 21:15:07 +0300
committerLasse Collin <lasse.collin@tukaani.org>2011-04-11 21:15:07 +0300
commit25fe729532cdf4b8fed56a4519b73cf31efaec50 (patch)
tree3cc4d203a9b4b2862beabf4547be00fe97557e83
parent91afb785a1dee34862078d9bf844ef12b8cc3e35 (diff)
downloadxz-25fe729532cdf4b8fed56a4519b73cf31efaec50.tar.gz
liblzma: Add the forgotten lzma_lzma2_block_size().
This should have been in 5eefc0086d24a65e136352f8c1d19cefb0cbac7a.
-rw-r--r--src/liblzma/lzma/lzma2_encoder.c10
-rw-r--r--src/liblzma/lzma/lzma2_encoder.h2
2 files changed, 12 insertions, 0 deletions
diff --git a/src/liblzma/lzma/lzma2_encoder.c b/src/liblzma/lzma/lzma2_encoder.c
index e734bc5..28442c3 100644
--- a/src/liblzma/lzma/lzma2_encoder.c
+++ b/src/liblzma/lzma/lzma2_encoder.c
@@ -391,3 +391,13 @@ lzma_lzma2_props_encode(const void *options, uint8_t *out)
return LZMA_OK;
}
+
+
+extern uint64_t
+lzma_lzma2_block_size(const void *options)
+{
+ const lzma_options_lzma *const opt = options;
+
+ // Use at least 1 MiB to keep compression ratio better.
+ return my_max((uint64_t)(opt->dict_size) * 3, UINT64_C(1) << 20);
+}
diff --git a/src/liblzma/lzma/lzma2_encoder.h b/src/liblzma/lzma/lzma2_encoder.h
index ca19ef4..1288136 100644
--- a/src/liblzma/lzma/lzma2_encoder.h
+++ b/src/liblzma/lzma/lzma2_encoder.h
@@ -38,4 +38,6 @@ extern uint64_t lzma_lzma2_encoder_memusage(const void *options);
extern lzma_ret lzma_lzma2_props_encode(const void *options, uint8_t *out);
+extern uint64_t lzma_lzma2_block_size(const void *options);
+
#endif