summaryrefslogtreecommitdiff
path: root/lib/compress
diff options
context:
space:
mode:
Diffstat (limited to 'lib/compress')
-rw-r--r--lib/compress/CompressStream.cpp14
-rw-r--r--lib/compress/CompressStream.h8
2 files changed, 12 insertions, 10 deletions
diff --git a/lib/compress/CompressStream.cpp b/lib/compress/CompressStream.cpp
index 9bb73e3d..f7728a21 100644
--- a/lib/compress/CompressStream.cpp
+++ b/lib/compress/CompressStream.cpp
@@ -177,12 +177,12 @@ int CompressStream::Read(void *pBuffer, int NBytes, int Timeout)
// Created: 27/5/04
//
// --------------------------------------------------------------------------
-void CompressStream::Write(const void *pBuffer, int NBytes)
+void CompressStream::Write(const void *pBuffer, int NBytes, int Timeout)
{
USE_WRITE_COMPRESSOR
if(pCompress == 0)
{
- mpStream->Write(pBuffer, NBytes);
+ mpStream->Write(pBuffer, NBytes, Timeout);
return;
}
@@ -207,7 +207,7 @@ void CompressStream::Write(const void *pBuffer, int NBytes)
// Created: 27/5/04
//
// --------------------------------------------------------------------------
-void CompressStream::WriteAllBuffered()
+void CompressStream::WriteAllBuffered(int Timeout)
{
if(mIsClosed)
{
@@ -215,7 +215,7 @@ void CompressStream::WriteAllBuffered()
}
// Just ask compressed data to be written out, but with the sync flag set
- WriteCompressedData(true);
+ WriteCompressedData(true, Timeout);
}
@@ -238,7 +238,7 @@ void CompressStream::Close()
pCompress->FinishInput();
WriteCompressedData();
- // Mark as definately closed
+ // Mark as definitely closed
mIsClosed = true;
}
}
@@ -257,7 +257,7 @@ void CompressStream::Close()
// Created: 28/5/04
//
// --------------------------------------------------------------------------
-void CompressStream::WriteCompressedData(bool SyncFlush)
+void CompressStream::WriteCompressedData(bool SyncFlush, int Timeout)
{
USE_WRITE_COMPRESSOR
if(pCompress == 0) {THROW_EXCEPTION(CompressException, Internal)}
@@ -268,7 +268,7 @@ void CompressStream::WriteCompressedData(bool SyncFlush)
s = pCompress->Output(mpBuffer, BUFFER_SIZE, SyncFlush);
if(s > 0)
{
- mpStream->Write(mpBuffer, s);
+ mpStream->Write(mpBuffer, s, Timeout);
}
} while(s > 0);
// Check assumption -- all input has been consumed
diff --git a/lib/compress/CompressStream.h b/lib/compress/CompressStream.h
index 7959e3dc..7d6b2501 100644
--- a/lib/compress/CompressStream.h
+++ b/lib/compress/CompressStream.h
@@ -33,8 +33,9 @@ private:
public:
virtual int Read(void *pBuffer, int NBytes, int Timeout = IOStream::TimeOutInfinite);
- virtual void Write(const void *pBuffer, int NBytes);
- virtual void WriteAllBuffered();
+ virtual void Write(const void *pBuffer, int NBytes,
+ int Timeout = IOStream::TimeOutInfinite);
+ virtual void WriteAllBuffered(int Timeout = IOStream::TimeOutInfinite);
virtual void Close();
virtual bool StreamDataLeft();
virtual bool StreamClosed();
@@ -43,7 +44,8 @@ protected:
void CheckRead();
void CheckWrite();
void CheckBuffer();
- void WriteCompressedData(bool SyncFlush = false);
+ void WriteCompressedData(bool SyncFlush = false,
+ int Timeout = IOStream::TimeOutInfinite);
private:
IOStream *mpStream;