1.1 --- a/MiniDisplay/BitArray.cpp Tue May 27 22:14:29 2014 +0200
1.2 +++ b/MiniDisplay/BitArray.cpp Wed May 28 08:06:27 2014 +0200
1.3 @@ -124,7 +124,9 @@
1.4 * Returned : None
1.5 ***************************************************************************/
1.6 BitArray::BitArray(const int numBits):
1.7 - m_NumBits(numBits)
1.8 + m_NumBits(numBits),
1.9 + m_Array(NULL),
1.10 + m_OwnsBuffer(true)
1.11 {
1.12 m_SizeInBytes = BITS_TO_CHARS(numBits);
1.13
1.14 @@ -146,10 +148,12 @@
1.15 * Effects : Allocates vectory for array bits
1.16 * Returned : None
1.17 ***************************************************************************/
1.18 -BitArray::BitArray(unsigned char *array, const int numBits):
1.19 +BitArray::BitArray(unsigned char *array, const int numBits,bool aOwnsBuffer):
1.20 m_NumBits(numBits),
1.21 - m_Array(array)
1.22 + m_Array(array),
1.23 + m_OwnsBuffer(aOwnsBuffer)
1.24 {
1.25 +
1.26 }
1.27
1.28 /***************************************************************************
1.29 @@ -162,7 +166,11 @@
1.30 ***************************************************************************/
1.31 BitArray::~BitArray(void)
1.32 {
1.33 - delete[] m_Array;
1.34 + if (m_OwnsBuffer)
1.35 + {
1.36 + delete[] m_Array;
1.37 + m_Array = NULL;
1.38 + }
1.39 }
1.40
1.41 /***************************************************************************