8000
We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 0af1ddf commit 71a4104Copy full SHA for 71a4104
src/DynamicBuffer.cpp
@@ -8,11 +8,15 @@ namespace {
8
// Inherit constructors
9
using String::String;
10
DynamicBufferString(String&& s) : String(std::move(s)) {};
11
- DynamicBufferString(DynamicBuffer&& d) : String() {
+ DynamicBufferString(DynamicBuffer&& d) : String() {
12
+ auto capacity = d.size() - 1;
13
+ auto buf = d.release();
14
+ auto len = strnlen(buf, capacity);
15
+ if (len == capacity) buf[len] = 0; // enforce null termination
16
setSSO(false);
- setCapacity(d.size() - 1);
- setBuffer(d.release());
- setLen(strlen(ptr.buff));
17
+ setBuffer(buf);
18
+ setCapacity(capacity);
19
+ setLen(len);
20
}
21
22
// Special feature: releease the buffer to the caller without deallocating
0 commit comments