diff --git a/src/corelib/compat/removed_api.cpp b/src/corelib/compat/removed_api.cpp index 663435a0d2d..96905cd5f92 100644 --- a/src/corelib/compat/removed_api.cpp +++ b/src/corelib/compat/removed_api.cpp @@ -1167,6 +1167,16 @@ bool QUuid::operator>(const QUuid &other) const noexcept return is_gt(compareThreeWay(*this, other)); } +QUuid QUuid::createUuidV3(const QUuid &ns, const QByteArray &baseData) noexcept +{ + return createUuidV3(ns, qToByteArrayViewIgnoringNull(baseData)); +} + +QUuid QUuid::createUuidV5(const QUuid &ns, const QByteArray &baseData) noexcept +{ + return createUuidV5(ns, qToByteArrayViewIgnoringNull(baseData)); +} + #include "qxmlstream.h" // inlined API // #include "qotherheader.h" diff --git a/src/corelib/plugin/quuid.cpp b/src/corelib/plugin/quuid.cpp index 99f8ee30b0d..b3fad47ee69 100644 --- a/src/corelib/plugin/quuid.cpp +++ b/src/corelib/plugin/quuid.cpp @@ -532,11 +532,14 @@ QUuid QUuid::fromString(QAnyStringView text) noexcept /*! \since 5.0 - \fn QUuid QUuid::createUuidV3(const QUuid &ns, const QByteArray &baseData); + \fn QUuid QUuid::createUuidV3(QUuid ns, QByteArrayView baseData); This function returns a new UUID with variant QUuid::DCE and version QUuid::Md5. \a ns is the namespace and \a baseData is the basic data as described by RFC 4122. + \note In Qt versions prior to 6.8, this function took QByteArray, not + QByteArrayView. + \sa variant(), version(), createUuidV5() */ @@ -552,11 +555,14 @@ QUuid QUuid::fromString(QAnyStringView text) noexcept /*! \since 5.0 - \fn QUuid QUuid::createUuidV5(const QUuid &ns, const QByteArray &baseData); + \fn QUuid QUuid::createUuidV5(QUuid ns, QByteArrayView baseData); This function returns a new UUID with variant QUuid::DCE and version QUuid::Sha1. \a ns is the namespace and \a baseData is the basic data as described by RFC 4122. + \note In Qt versions prior to 6.8, this function took QByteArray, not + QByteArrayView. + \sa variant(), version(), createUuidV3() */ @@ -570,13 +576,13 @@ QUuid QUuid::fromString(QAnyStringView text) noexcept \sa variant(), version(), createUuidV3() */ #ifndef QT_BOOTSTRAPPED -QUuid QUuid::createUuidV3(const QUuid &ns, const QByteArray &baseData) noexcept +QUuid QUuid::createUuidV3(QUuid ns, QByteArrayView baseData) noexcept { return createFromName(ns, baseData, QCryptographicHash::Md5, 3); } #endif -QUuid QUuid::createUuidV5(const QUuid &ns, const QByteArray &baseData) noexcept +QUuid QUuid::createUuidV5(QUuid ns, QByteArrayView baseData) noexcept { return createFromName(ns, baseData, QCryptographicHash::Sha1, 5); } diff --git a/src/corelib/plugin/quuid.h b/src/corelib/plugin/quuid.h index 580784723c7..591d9b27c43 100644 --- a/src/corelib/plugin/quuid.h +++ b/src/corelib/plugin/quuid.h @@ -220,20 +220,27 @@ public: #endif public: static QUuid createUuid(); -#ifndef QT_BOOTSTRAPPED +#if QT_CORE_REMOVED_SINCE(6, 8) static QUuid createUuidV3(const QUuid &ns, const QByteArray &baseData) noexcept; -#endif static QUuid createUuidV5(const QUuid &ns, const QByteArray &baseData) noexcept; +#endif + static QUuid createUuidV5(QUuid ns, QByteArrayView baseData) noexcept; #ifndef QT_BOOTSTRAPPED + static QUuid createUuidV3(QUuid ns, QByteArrayView baseData) noexcept; +#if !QT_CORE_REMOVED_SINCE(6, 8) + Q_WEAK_OVERLOAD +#endif static inline QUuid createUuidV3(const QUuid &ns, const QString &baseData) { - return QUuid::createUuidV3(ns, baseData.toUtf8()); + return QUuid::createUuidV3(ns, qToByteArrayViewIgnoringNull(baseData.toUtf8())); } #endif - +#if !QT_CORE_REMOVED_SINCE(6, 8) + Q_WEAK_OVERLOAD +#endif static inline QUuid createUuidV5(const QUuid &ns, const QString &baseData) { - return QUuid::createUuidV5(ns, baseData.toUtf8()); + return QUuid::createUuidV5(ns, qToByteArrayViewIgnoringNull(baseData.toUtf8())); } QUuid::Variant variant() const noexcept;