diff --git a/ADS/String.h b/ADS/String.h index 516989e..94b3d6b 100644 --- a/ADS/String.h +++ b/ADS/String.h @@ -18,6 +18,11 @@ class BasicString { public: BasicString() = default; + ~BasicString() + { + clear(); + } + explicit BasicString(const T value) { m_capacity = 2; diff --git a/ADS/Vector.h b/ADS/Vector.h index 7fe0275..32eb347 100644 --- a/ADS/Vector.h +++ b/ADS/Vector.h @@ -402,7 +402,7 @@ class Vector { if (m_capacity < newSize) reserve(newSize + s_capacityIncrement); for (ADS::size_t i = m_size; i < newSize; ++i) - m_data[i] = {}; + new (&m_data[i]) T{}; m_size = newSize; return; } diff --git a/Userland/LibGUI/Bitmap.cpp b/Userland/LibGUI/Bitmap.cpp index ee94a64..9471ef7 100644 --- a/Userland/LibGUI/Bitmap.cpp +++ b/Userland/LibGUI/Bitmap.cpp @@ -44,7 +44,7 @@ Bitmap::Bitmap(BitmapFormat format, Size size, char* data, size_t dataSize, OwnB Bitmap::~Bitmap() { if (m_isOwning && m_data) { - delete m_data; + delete[] m_data; m_data = nullptr; } }