fix: replace VLA

Avoids -Wvla-cxx-extension warning by using standard C++ container.
VLA is not part of standard C++ and causes portability issues.
This commit is contained in:
Auska
2025-10-14 13:12:03 +08:00
committed by Jari Sundell
parent 891a6ba69d
commit 2d2a756a3c
2 changed files with 10 additions and 10 deletions
+6 -6
View File
@@ -50,16 +50,16 @@ TextElementStringBase::print(char* first, char* last, Canvas::attributes_list* a
return first;
if (m_flags & flag_escape_hex) {
char buffer[last - first];
char* bufferLast = copy_string(buffer, buffer + (last - first), target);
auto buffer = std::make_unique<char[]>(last - first);
char* bufferLast = copy_string(buffer.get(), buffer.get() + (last - first), target);
first = rak::transform_hex(buffer, bufferLast, first, last);
first = rak::transform_hex(buffer.get(), bufferLast, first, last);
} else if (m_flags & flag_escape_html) {
char buffer[last - first];
char* bufferLast = copy_string(buffer, buffer + (last - first), target);
auto buffer = std::make_unique<char[]>(last - first);
char* bufferLast = copy_string(buffer.get(), buffer.get() + (last - first), target);
first = rak::copy_escape_html(buffer, bufferLast, first, last);
first = rak::copy_escape_html(buffer.get(), bufferLast, first, last);
} else {
first = copy_string(first, last, target);