summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/string.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/string.cc b/src/string.cc
index ae467075..353a9f4e 100644
--- a/src/string.cc
+++ b/src/string.cc
@@ -148,7 +148,8 @@ void String::Data::set_short(const char* data, size_t size)
u.s.remaining_size = Short::capacity - size;
if (data != nullptr)
memcpy(u.s.string, data, size);
- u.s.string[size] = 0;
+ if (size != Short::capacity) // in this case, remaining_size is the null terminator
+ u.s.string[size] = 0;
}
UnitTest test_data{[]{