]> git.stg.codes - stg.git/blobdiff - stglibs/crypto.lib/bfstream.cpp
Some minor changes in bf stream.
[stg.git] / stglibs / crypto.lib / bfstream.cpp
index 4f376c5d9f5e7d80217ea9ac419328761770b86e..24aa7e1011bf14bcf4b13243bed9e4810daca1a3 100644 (file)
@@ -26,6 +26,7 @@ class COMMON
               m_proc(proc)
         {
         InitContext(key.c_str(), key.length(), &m_ctx);
+        memset(m_buffer, 0, sizeof(m_buffer));
         }
 
         void Put(const void * data, size_t size, bool last)
@@ -35,7 +36,7 @@ class COMMON
             {
             memcpy(m_ptr, data, sizeof(m_buffer) - dataSize); // Fill buffer
             size -= sizeof(m_buffer) - dataSize; // Adjust size
-            data += sizeof(m_buffer) - dataSize; // Adjust data pointer
+            data = static_cast<const char *>(data) + sizeof(m_buffer) - dataSize; // Adjust data pointer
             m_proc(m_buffer, m_buffer, sizeof(m_buffer), &m_ctx); // Process
             m_callback(m_buffer, sizeof(m_buffer), m_data); // Consume
             m_ptr = m_buffer;