diff --git a/src/corelib/text/qbytearray.cpp b/src/corelib/text/qbytearray.cpp index bc449e44801..04c54185224 100644 --- a/src/corelib/text/qbytearray.cpp +++ b/src/corelib/text/qbytearray.cpp @@ -2533,6 +2533,9 @@ QByteArray &QByteArray::replace(QByteArrayView before, QByteArrayView after) const char *a = after.data(); qsizetype asize = after.size(); + if (bsize == 1 && asize == 1) + return replace(*b, *a); // use the fast char-char algorithm + if (isNull() || (b == a && bsize == asize)) return *this;