mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-01 09:23:03 -04:00
*** empty log message ***
This commit is contained in:
parent
78d368b6ca
commit
f0db898172
@ -53,6 +53,7 @@ init(PT(Buffer) buffer) {
|
||||
_temp_file_name = temp_name;
|
||||
_temp_file_name.set_binary();
|
||||
delete temp_name;
|
||||
_decompressor = new ZDecompressor();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@ -139,6 +140,9 @@ initiate(Filename &source_file, Filename &dest_file) {
|
||||
////////////////////////////////////////////////////////////////////
|
||||
int Decompressor::
|
||||
run(void) {
|
||||
if (_decompressor == NULL) {
|
||||
_decompressor = new ZDecompressor();
|
||||
}
|
||||
|
||||
// See if there is anything left in the source file
|
||||
if (_read_all_input == false) {
|
||||
@ -160,16 +164,18 @@ run(void) {
|
||||
nassertr(avail_out > 0 && avail_in > 0, false);
|
||||
|
||||
while (avail_in > 0) {
|
||||
int ret = _decompressor.decompress_to_stream(next_in, avail_in,
|
||||
int ret = _decompressor->decompress_to_stream(next_in, avail_in,
|
||||
next_out, avail_out, dest_buffer,
|
||||
dest_buffer_length, _write_stream);
|
||||
if (ret == ZCompressorBase::S_error)
|
||||
return DS_error_zlib;
|
||||
if ((int)_decompressor.get_total_in() == _source_file_length &&
|
||||
if ((int)_decompressor->get_total_in() == _source_file_length &&
|
||||
avail_out == dest_buffer_length)
|
||||
_read_stream.close();
|
||||
_write_stream.close();
|
||||
_source_file.unlink();
|
||||
delete _decompressor;
|
||||
_decompressor = NULL;
|
||||
return DS_success;
|
||||
}
|
||||
|
||||
|
@ -54,7 +54,7 @@ private:
|
||||
bool _read_all_input;
|
||||
bool _handled_all_input;
|
||||
int _source_buffer_length;
|
||||
ZDecompressor _decompressor;
|
||||
ZDecompressor *_decompressor;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -41,6 +41,7 @@ ZCompressor(void) {
|
||||
ZCompressor::
|
||||
~ZCompressor(void) {
|
||||
handle_zerror(deflateEnd(_stream), _stream);
|
||||
delete _stream;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
Loading…
x
Reference in New Issue
Block a user