diff --git a/src/corelib/io/qurlrecode.cpp b/src/corelib/io/qurlrecode.cpp index 985e4b5c28..fd5accb108 100644 --- a/src/corelib/io/qurlrecode.cpp +++ b/src/corelib/io/qurlrecode.cpp @@ -591,7 +591,7 @@ static qsizetype decode(QString &appendTo, QStringView in) const int origSize = appendTo.size(); appendTo.resize(origSize + (end - begin)); QChar *output = appendTo.data() + origSize; - memcpy(output, begin, (input - begin) * sizeof(QChar)); + memcpy(static_cast(output), static_cast(begin), (input - begin) * sizeof(QChar)); output += input - begin; while (input != end) { @@ -601,7 +601,8 @@ static qsizetype decode(QString &appendTo, QStringView in) if (Q_UNLIKELY(end - input < 3 || !isHex(input[1]) || !isHex(input[2]))) { // badly-encoded data appendTo.resize(origSize + (end - begin)); - memcpy(appendTo.begin() + origSize, begin, (end - begin) * sizeof(*end)); + memcpy(static_cast(appendTo.begin() + origSize), + static_cast(begin), (end - begin) * sizeof(*end)); return end - begin; }