]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/zstream.cpp
Warning fix and source cleaning.
[wxWidgets.git] / src / common / zstream.cpp
index 09d616bab2cbe04cdf4f987fd637e2809f9689b9..7afa0548ffd9a2e2133782e246521b71161d04b2 100644 (file)
@@ -218,7 +218,7 @@ wxZlibOutputStream::wxZlibOutputStream(wxOutputStream& stream,
       memset(m_deflate, 0, sizeof(z_stream_s));
       m_deflate->next_out = m_z_buffer;
       m_deflate->avail_out = m_z_size;
+
       // see zlib.h for documentation on windowBits
       int windowBits = MAX_WBITS;
       switch (flags) {
@@ -228,7 +228,7 @@ wxZlibOutputStream::wxZlibOutputStream(wxOutputStream& stream,
         default:                wxFAIL_MSG(wxT("Invalid zlib flag"));
       }
 
-      if (deflateInit2(m_deflate, level, Z_DEFLATED, windowBits, 
+      if (deflateInit2(m_deflate, level, Z_DEFLATED, windowBits,
                        8, Z_DEFAULT_STRATEGY) == Z_OK)
         return;
     }
@@ -238,20 +238,20 @@ wxZlibOutputStream::wxZlibOutputStream(wxOutputStream& stream,
   m_lasterror = wxSTREAM_WRITE_ERROR;
 }
 
-wxZlibOutputStream::~wxZlibOutputStream()
-{
-  if (m_deflate && m_z_buffer)
-    DoFlush(true);
-  deflateEnd(m_deflate);
-  delete m_deflate;
+bool wxZlibOutputStream::Close()
+ {
+  DoFlush(true);
+   deflateEnd(m_deflate);
+   delete m_deflate;
 
-  delete[] m_z_buffer;
-}
+  m_deflate = NULL;
+   delete[] m_z_buffer;
+  m_z_buffer = NULL;
+  return IsOk();
+ }
 
 void wxZlibOutputStream::DoFlush(bool final)
 {
-  wxASSERT_MSG(m_deflate && m_z_buffer, wxT("Deflate stream not open"));
-
   if (!m_deflate || !m_z_buffer)
     m_lasterror = wxSTREAM_WRITE_ERROR;
   if (!IsOk())
@@ -322,10 +322,10 @@ size_t wxZlibOutputStream::OnSysWrite(const void *buffer, size_t size)
 }
 
 /* static */ bool wxZlibOutputStream::CanHandleGZip()
-{ 
+{
   return wxZlibInputStream::CanHandleGZip();
 }
 
 #endif
   // wxUSE_ZLIB && wxUSE_STREAMS
-  
+