From 623169a5c6cbad1ae6d8969f273f534cbd0c3fe4 Mon Sep 17 00:00:00 2001 From: drbrain Date: Wed, 15 Feb 2012 01:28:05 +0000 Subject: * ext/zlib/zlib.c (Init_zlib): Added Zlib::FIXED and Zlib::RLE strategies. * NEWS: Add note about the new Zlib constants. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/zlib/zlib.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'ext') diff --git a/ext/zlib/zlib.c b/ext/zlib/zlib.c index 32decbbc36..b95198554e 100644 --- a/ext/zlib/zlib.c +++ b/ext/zlib/zlib.c @@ -1329,13 +1329,21 @@ rb_deflate_s_allocate(VALUE klass) * * Zlib::FILTERED:: * For data produced by a filter (or predictor). The effect of FILTERED is - * to force more Huffman coding and less string matching; it is somewhat + * to force more Huffman codes and less string matching; it is somewhat * intermediate between DEFAULT_STRATEGY and HUFFMAN_ONLY. Filtered data * consists mostly of small values with a somewhat random distribution. * + * Zlib::FIXED:: + * Prevents the use of dynamic Huffman codes, allowing for a simpler decoder + * for specialized applications. + * * Zlib::HUFFMAN_ONLY:: * Use Huffman encoding only (no string matching). * + * Zlib::RLE:: + * Designed to be almost as fast as HUFFMAN_ONLY, but give better + * compression for PNG image data. + * * == Examples * * === Basic @@ -4209,6 +4217,18 @@ Init_zlib() * * Which is an argument for Deflate.new and Deflate#params. */ rb_define_const(mZlib, "HUFFMAN_ONLY", INT2FIX(Z_HUFFMAN_ONLY)); +#ifdef Z_RLE + /* compression method 3 + * + * Which is an argument for Deflate.new and Deflate#params. */ + rb_define_const(mZlib, "RLE", INT2FIX(Z_RLE)); +#endif +#ifdef Z_FIXED + /* compression method 4 + * + * Which is an argument for Deflate.new and Deflate#params. */ + rb_define_const(mZlib, "FIXED", INT2FIX(Z_FIXED)); +#endif /* compression method 0 * * Which is an argument for Deflate.new and Deflate#params. */ -- cgit v1.2.3