From b3889230cd5e3cef49dcd1134f6bf81676dcc04e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vojt=C4=9Bch=20Moravec?= <theazgra@gmail.com> Date: Thu, 21 Mar 2019 21:32:31 +0100 Subject: [PATCH] Added destructor and fixed include. --- .../azgra_lib/include/azgra/azgra_string.h | 1 + .../azgra_lib/src/azgra_string.cpp | 22 ++++++++++++------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/czi/source_code/azgra_lib/include/azgra/azgra_string.h b/czi/source_code/azgra_lib/include/azgra/azgra_string.h index 47c0885..70237dc 100644 --- a/czi/source_code/azgra_lib/include/azgra/azgra_string.h +++ b/czi/source_code/azgra_lib/include/azgra/azgra_string.h @@ -70,6 +70,7 @@ public: * @param cString Char array to create string from. */ SimpleString(const char *cString); + ~SimpleString(); /** * @brief Get the c string object diff --git a/czi/source_code/azgra_lib/src/azgra_string.cpp b/czi/source_code/azgra_lib/src/azgra_string.cpp index b07e37f..02492ab 100644 --- a/czi/source_code/azgra_lib/src/azgra_string.cpp +++ b/czi/source_code/azgra_lib/src/azgra_string.cpp @@ -1,4 +1,4 @@ -#include "azgra_string.h" +#include <azgra_string.h> namespace azgra { @@ -10,7 +10,7 @@ char *SimpleString::alloc_string(const size_t &length) return memory; } -char *SimpleString::realloc_string(const size_t &length, const char* oldString, const size_t oldLen) +char *SimpleString::realloc_string(const size_t &length, const char *oldString, const size_t oldLen) { char *memory = alloc_string(length); for (size_t i = 0; i < oldLen; i++) @@ -50,7 +50,7 @@ void SimpleString::internal_initalize(const char *string) } SimpleString::SimpleString(char *cString, const size_t length, bool noAlloc) -{ +{ assert(noAlloc); _string = cString; _length = length; @@ -98,6 +98,12 @@ SimpleString::SimpleString(const char *cString) internal_initalize(cString); } +SimpleString::~SimpleString() +{ + free_string(_string); + _length = 0; +} + void SimpleString::internal_concat(const char *string, const size_t length) { size_t newLength = _length + length; @@ -471,19 +477,19 @@ SimpleString SimpleString::substring(const size_t fromIndex, const size_t length return result; } -SimpleString SimpleString::replicate(const char* cString, const int replicationCount) +SimpleString SimpleString::replicate(const char *cString, const int replicationCount) { size_t replLen = c_string_length(cString); size_t resultLen = replLen * replicationCount; - char* resultMemory = alloc_string(resultLen); + char *resultMemory = alloc_string(resultLen); SimpleString result(resultMemory, resultLen, true); - for(int repl = 0; repl < replicationCount; repl++) + for (int repl = 0; repl < replicationCount; repl++) { - for(size_t charIndex = 0; charIndex < replLen; charIndex++) + for (size_t charIndex = 0; charIndex < replLen; charIndex++) { - result[(repl*replLen) + charIndex] = cString[charIndex]; + result[(repl * replLen) + charIndex] = cString[charIndex]; } } return result; -- GitLab