diff options
author | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-06 22:46:27 +0000 |
---|---|---|
committer | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-06 22:46:27 +0000 |
commit | b53ab229bdba6cd50585c8fcaad011998b02f82c (patch) | |
tree | ef27ab8c08211d13d0ae86d1ec819b0b233b218f /remoting/base/compressor_zlib.cc | |
parent | c0d56a6c6bd730aecaf124d738f266c691a2a6b2 (diff) | |
download | chromium_src-b53ab229bdba6cd50585c8fcaad011998b02f82c.zip chromium_src-b53ab229bdba6cd50585c8fcaad011998b02f82c.tar.gz chromium_src-b53ab229bdba6cd50585c8fcaad011998b02f82c.tar.bz2 |
Refactor ZLib and Verbatim encoders.
Added EncoderRowBased that implements encoding for both ZLib and Verbatim.
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/5382008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68394 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/base/compressor_zlib.cc')
-rw-r--r-- | remoting/base/compressor_zlib.cc | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/remoting/base/compressor_zlib.cc b/remoting/base/compressor_zlib.cc index 6f700731..0128361 100644 --- a/remoting/base/compressor_zlib.cc +++ b/remoting/base/compressor_zlib.cc @@ -21,6 +21,17 @@ namespace remoting { CompressorZlib::CompressorZlib() { + Reset(); +} + +CompressorZlib::~CompressorZlib() { + deflateEnd(stream_.get()); +} + +void CompressorZlib::Reset() { + if (stream_.get()) + deflateEnd(stream_.get()); + stream_.reset(new z_stream()); stream_->next_in = Z_NULL; @@ -31,10 +42,6 @@ CompressorZlib::CompressorZlib() { deflateInit(stream_.get(), Z_BEST_SPEED); } -CompressorZlib::~CompressorZlib() { - deflateEnd(stream_.get()); -} - bool CompressorZlib::Process(const uint8* input_data, int input_size, uint8* output_data, int output_size, CompressorFlush flush, int* consumed, |