diff --git a/src/corelib/text/qbytearray.cpp b/src/corelib/text/qbytearray.cpp index 7562548bad..a03462561f 100644 --- a/src/corelib/text/qbytearray.cpp +++ b/src/corelib/text/qbytearray.cpp @@ -2169,8 +2169,10 @@ QByteArray &QByteArray::replace(qsizetype pos, qsizetype len, QByteArrayView aft return replace(pos, len, QByteArrayView{copy}); } if (len == after.size() && (pos + len <= size())) { + // same size: in-place replacement possible detach(); - memcpy(d.data() + pos, after.data(), len*sizeof(char)); + if (len > 0) + memcpy(d.data() + pos, after.data(), len*sizeof(char)); return *this; } else { // ### optimize me