QNetworkDiskCache: Switch to unique_ptr in most cases
Because take() is deprecated, and these pointers are meant to leave the scope in some branches. Change-Id: I5432d91a28f4c5c8c17fadf7ce3bcd41716e216a Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> (cherry picked from commit 54730b31faa51fcb7973cc465ca981dd7c18e8b0) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
408a2e8d67
commit
3ec6e14771
@ -53,6 +53,8 @@
|
||||
#include <qcryptographichash.h>
|
||||
#include <qdebug.h>
|
||||
|
||||
#include <memory>
|
||||
|
||||
#define CACHE_POSTFIX QLatin1String(".d")
|
||||
#define PREPARED_SLASH QLatin1String("prepared/")
|
||||
#define CACHE_VERSION 8
|
||||
@ -196,7 +198,7 @@ QIODevice *QNetworkDiskCache::prepare(const QNetworkCacheMetaData &metaData)
|
||||
break;
|
||||
}
|
||||
}
|
||||
QScopedPointer<QCacheItem> cacheItem(new QCacheItem);
|
||||
std::unique_ptr<QCacheItem> cacheItem = std::make_unique<QCacheItem>();
|
||||
cacheItem->metaData = metaData;
|
||||
|
||||
QIODevice *device = nullptr;
|
||||
@ -218,7 +220,7 @@ QIODevice *QNetworkDiskCache::prepare(const QNetworkCacheMetaData &metaData)
|
||||
cacheItem->writeHeader(cacheItem->file);
|
||||
device = cacheItem->file;
|
||||
}
|
||||
d->inserting[device] = cacheItem.take();
|
||||
d->inserting[device] = cacheItem.release();
|
||||
return device;
|
||||
}
|
||||
|
||||
@ -395,7 +397,7 @@ QIODevice *QNetworkDiskCache::data(const QUrl &url)
|
||||
qDebug() << "QNetworkDiskCache::data()" << url;
|
||||
#endif
|
||||
Q_D(QNetworkDiskCache);
|
||||
QScopedPointer<QBuffer> buffer;
|
||||
std::unique_ptr<QBuffer> buffer;
|
||||
if (!url.isValid())
|
||||
return nullptr;
|
||||
if (d->lastItem.metaData.url() == url && d->lastItem.data.isOpen()) {
|
||||
@ -421,7 +423,7 @@ QIODevice *QNetworkDiskCache::data(const QUrl &url)
|
||||
}
|
||||
}
|
||||
buffer->open(QBuffer::ReadOnly);
|
||||
return buffer.take();
|
||||
return buffer.release();
|
||||
}
|
||||
|
||||
/*!
|
||||
|
Loading…
x
Reference in New Issue
Block a user