diff --git a/monero_libwallet2_api_c/src/main/cpp/helpers.cpp b/monero_libwallet2_api_c/src/main/cpp/helpers.cpp index 3191390..3f7c66a 100644 --- a/monero_libwallet2_api_c/src/main/cpp/helpers.cpp +++ b/monero_libwallet2_api_c/src/main/cpp/helpers.cpp @@ -24,8 +24,11 @@ const char* vectorToString(const std::vector& vec, const std::strin } result += vec.back(); // Append the last string without the separator - const char* cstr = result.c_str(); - return cstr; + std::string str = result; + const std::string::size_type size = str.size(); + char *buffer = new char[size + 1]; //we need extra char for NUL + memcpy(buffer, str.c_str(), size + 1); + return buffer; } const char* vectorToString(const std::vector& vec, const std::string separator) {