diff options
author | weidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0> | 2003-10-14 01:25:28 +0000 |
---|---|---|
committer | weidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0> | 2003-10-14 01:25:28 +0000 |
commit | 2ddf50a5761451d0383d380abb0a89505f62f0be (patch) | |
tree | eda6d83abd4472bb82bfb58abfbda79ea13b9431 | |
parent | 1827e89c3a73ec8bec11820df4899aefc92e6db5 (diff) | |
download | cryptopp-2ddf50a5761451d0383d380abb0a89505f62f0be.tar.gz |
fix bug (found by Michael Hunley)
git-svn-id: svn://svn.code.sf.net/p/cryptopp/code/trunk/c5@134 57ff6487-cd31-0410-9ec3-f628ee90f5f0
-rw-r--r-- | queue.cpp | 9 | ||||
-rw-r--r-- | queue.h | 4 |
2 files changed, 10 insertions, 3 deletions
@@ -129,11 +129,18 @@ public: // ******************************************************** ByteQueue::ByteQueue(unsigned int nodeSize) - : m_autoNodeSize(m_nodeSize==0), m_nodeSize(nodeSize ? nodeSize : 256), m_lazyLength(0) + : m_lazyLength(0) { + SetNodeSize(nodeSize); m_head = m_tail = new ByteQueueNode(m_nodeSize); } +void ByteQueue::SetNodeSize(unsigned int nodeSize) +{ + m_autoNodeSize = !nodeSize; + m_nodeSize = m_autoNodeSize ? 256 : nodeSize; +} + ByteQueue::ByteQueue(const ByteQueue ©) { CopyFrom(copy); @@ -16,7 +16,7 @@ class ByteQueueNode; class CRYPTOPP_DLL ByteQueue : public Bufferless<BufferedTransformation> { public: - ByteQueue(unsigned int m_nodeSize=0); + ByteQueue(unsigned int nodeSize=0); ByteQueue(const ByteQueue ©); ~ByteQueue(); @@ -39,7 +39,7 @@ public: unsigned int CopyRangeTo2(BufferedTransformation &target, unsigned long &begin, unsigned long end=ULONG_MAX, const std::string &channel=NULL_CHANNEL, bool blocking=true) const; // these member functions are not inherited - void SetNodeSize(unsigned int nodeSize) {m_nodeSize = nodeSize;} + void SetNodeSize(unsigned int nodeSize); unsigned long CurrentSize() const; bool IsEmpty() const; |