diff options
| author | Marc Mutz <marc.mutz@kdab.com> | 2021-07-10 08:17:06 +0200 |
|---|---|---|
| committer | Marc Mutz <marc.mutz@kdab.com> | 2021-07-14 20:05:41 +0200 |
| commit | 41a5480cc78f9ba04be50c2481172ef86ca64079 (patch) | |
| tree | dc6f24ebaeb292a6ceb2c9346d9193a5581c1fa5 /src/network/access/qnetworkaccessbackend.cpp | |
| parent | 6c1bc7798bec6bc48439b297e55d14a9da0a3673 (diff) | |
Hold QRingBuffer and QNonContiguousByteDevice in shared_ptr
... instead of QSharedPointer.
QSharedPointer performs twice as many atomic operations per pointer
copy as std::shared_ptr, and this is private API, we're not bound by
BC constraints, so we can port to the more efficient version.
Change-Id: I9572a8321aae381e5dbe4a51119f2c9494a8fbc7
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'src/network/access/qnetworkaccessbackend.cpp')
| -rw-r--r-- | src/network/access/qnetworkaccessbackend.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/network/access/qnetworkaccessbackend.cpp b/src/network/access/qnetworkaccessbackend.cpp index f7e29340d95..2284461099b 100644 --- a/src/network/access/qnetworkaccessbackend.cpp +++ b/src/network/access/qnetworkaccessbackend.cpp @@ -80,7 +80,7 @@ public: QNetworkAccessBackend::TargetTypes m_targetTypes; QNetworkAccessBackend::SecurityFeatures m_securityFeatures; QNetworkAccessBackend::IOFeatures m_ioFeatures; - QSharedPointer<QNonContiguousByteDevice> uploadByteDevice; + std::shared_ptr<QNonContiguousByteDevice> uploadByteDevice; QIODevice *wrappedUploadByteDevice; QNetworkReplyImplPrivate *m_reply = nullptr; QNetworkAccessManagerPrivate *m_manager = nullptr; @@ -566,7 +566,7 @@ QIODevice *QNetworkAccessBackend::createUploadByteDevice() // We want signal emissions only for normal asynchronous uploads if (!isSynchronous()) { - connect(d->uploadByteDevice.data(), &QNonContiguousByteDevice::readProgress, this, + connect(d->uploadByteDevice.get(), &QNonContiguousByteDevice::readProgress, this, [this](qint64 a, qint64 b) { Q_D(QNetworkAccessBackend); if (!d->m_reply->isFinished) @@ -574,7 +574,7 @@ QIODevice *QNetworkAccessBackend::createUploadByteDevice() }); } - d->wrappedUploadByteDevice = QNonContiguousByteDeviceFactory::wrap(d->uploadByteDevice.data()); + d->wrappedUploadByteDevice = QNonContiguousByteDeviceFactory::wrap(d->uploadByteDevice.get()); return d->wrappedUploadByteDevice; } |
