diff options
author | Marc Mutz <marc.mutz@qt.io> | 2022-12-21 15:57:59 +0100 |
---|---|---|
committer | Marc Mutz <marc.mutz@qt.io> | 2023-02-02 13:34:02 +0000 |
commit | 5ba25903882222a556a3e7558e6455e2a203569d (patch) | |
tree | 4a8389f2e2e12ca65ed7290a4f8986f46f3a77ef /src/gui/painting/qdrawhelper_p.h | |
parent | 7b9f4aa0fc85e8c1950f0bdc2d3802f935e25f30 (diff) |
QPaintEngineRaster: port from QSharedPointer to std::shared_ptr
Compared to std::shared_ptr, QSharedPointer requires 2x the atomic
operations per copy, and does not support QSharedPointer<void>.
Port to std::shared_ptr, and drop the Pinnable kludge.
Add an optimistic std::move() when we insert into QMultiHash.
Pick-to: 6.5
Change-Id: I2ab004b7e8fa36d9e777cd787ffded4076d2880f
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/gui/painting/qdrawhelper_p.h')
-rw-r--r-- | src/gui/painting/qdrawhelper_p.h | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/src/gui/painting/qdrawhelper_p.h b/src/gui/painting/qdrawhelper_p.h index 85b073bfde..5f58d55dd0 100644 --- a/src/gui/painting/qdrawhelper_p.h +++ b/src/gui/painting/qdrawhelper_p.h @@ -29,7 +29,7 @@ #include "private/qrasterdefs_p.h" #include <private/qsimd_p.h> -#include <QtCore/qsharedpointer.h> +#include <memory> QT_BEGIN_NAMESPACE @@ -330,11 +330,7 @@ struct QSpanData QGradientData gradient; QTextureData texture; }; - class Pinnable { - protected: - ~Pinnable() {} - }; // QSharedPointer<const void> is not supported - QSharedPointer<const Pinnable> cachedGradient; + std::shared_ptr<const void> cachedGradient; void init(QRasterBuffer *rb, const QRasterPaintEngine *pe); |