Fix memory leak. Correct type for array.

This commit is contained in:
lganzzzo 2020-02-14 17:42:46 +02:00
parent 27c46444db
commit 51fbc2b4ea
3 changed files with 4 additions and 4 deletions

View File

@ -33,7 +33,7 @@ oatpp::String Url::Parser::parseScheme(oatpp::parser::Caret& caret) {
caret.findChar(':');
v_buff_size size = caret.getPosition() - pos0;
if(size > 0) {
std::unique_ptr<v_char8> buff(new v_char8[size]);
std::unique_ptr<v_char8[]> buff(new v_char8[size]);
std::memcpy(buff.get(), &caret.getData()[pos0], size);
oatpp::base::StrBuffer::lowerCase(buff.get(), size);
return oatpp::String((const char*)buff.get(), size, true);

View File

@ -102,7 +102,7 @@ v_int64 Multipart::count() {
// Other functions
oatpp::String generateRandomBoundary(v_int32 boundarySize) {
std::unique_ptr<v_char8> buffer(new v_char8[boundarySize]);
std::unique_ptr<v_char8[]> buffer(new v_char8[boundarySize]);
utils::random::Random::randomBytes(buffer.get(), boundarySize);
return encoding::Base64::encode(buffer.get(), boundarySize, encoding::Base64::ALPHABET_BASE64_URL_SAFE);
}

View File

@ -64,7 +64,7 @@ namespace {
oatpp::web::mime::multipart::StatefulParser parser(boundary, listener, nullptr);
oatpp::data::stream::BufferInputStream stream(text.getPtr(), text->getData(), text->getSize());
std::unique_ptr<v_char8> buffer(new v_char8[step]);
std::unique_ptr<v_char8[]> buffer(new v_char8[step]);
v_io_size size;
while((size = stream.readSimple(buffer.get(), step)) != 0) {
oatpp::data::buffer::InlineWriteData inlineData(buffer.get(), size);
@ -83,7 +83,7 @@ namespace {
OATPP_ASSERT(part->getInMemoryData() == value);
v_int64 bufferSize = 16;
std::unique_ptr<v_char8> buffer(new v_char8[bufferSize]);
std::unique_ptr<v_char8[]> buffer(new v_char8[bufferSize]);
oatpp::data::stream::ChunkedBuffer stream;
oatpp::data::stream::transfer(part->getInputStream().get(), &stream, 0, buffer.get(), bufferSize);