mirror of https://github.com/qt/qtbase.git
QNetworkDiskCache: Switch to unique_ptr in most cases
Because take() is deprecated, and these pointers are meant to leave the scope in some branches. Pick-to: 6.1 Change-Id: I5432d91a28f4c5c8c17fadf7ce3bcd41716e216a Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
This commit is contained in:
parent
c254d73be6
commit
54730b31fa
|
@ -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…
Reference in New Issue