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 <qcryptographichash.h>
|
||||||
#include <qdebug.h>
|
#include <qdebug.h>
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
|
|
||||||
#define CACHE_POSTFIX QLatin1String(".d")
|
#define CACHE_POSTFIX QLatin1String(".d")
|
||||||
#define PREPARED_SLASH QLatin1String("prepared/")
|
#define PREPARED_SLASH QLatin1String("prepared/")
|
||||||
#define CACHE_VERSION 8
|
#define CACHE_VERSION 8
|
||||||
|
@ -196,7 +198,7 @@ QIODevice *QNetworkDiskCache::prepare(const QNetworkCacheMetaData &metaData)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
QScopedPointer<QCacheItem> cacheItem(new QCacheItem);
|
std::unique_ptr<QCacheItem> cacheItem = std::make_unique<QCacheItem>();
|
||||||
cacheItem->metaData = metaData;
|
cacheItem->metaData = metaData;
|
||||||
|
|
||||||
QIODevice *device = nullptr;
|
QIODevice *device = nullptr;
|
||||||
|
@ -218,7 +220,7 @@ QIODevice *QNetworkDiskCache::prepare(const QNetworkCacheMetaData &metaData)
|
||||||
cacheItem->writeHeader(cacheItem->file);
|
cacheItem->writeHeader(cacheItem->file);
|
||||||
device = cacheItem->file;
|
device = cacheItem->file;
|
||||||
}
|
}
|
||||||
d->inserting[device] = cacheItem.take();
|
d->inserting[device] = cacheItem.release();
|
||||||
return device;
|
return device;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -395,7 +397,7 @@ QIODevice *QNetworkDiskCache::data(const QUrl &url)
|
||||||
qDebug() << "QNetworkDiskCache::data()" << url;
|
qDebug() << "QNetworkDiskCache::data()" << url;
|
||||||
#endif
|
#endif
|
||||||
Q_D(QNetworkDiskCache);
|
Q_D(QNetworkDiskCache);
|
||||||
QScopedPointer<QBuffer> buffer;
|
std::unique_ptr<QBuffer> buffer;
|
||||||
if (!url.isValid())
|
if (!url.isValid())
|
||||||
return nullptr;
|
return nullptr;
|
||||||
if (d->lastItem.metaData.url() == url && d->lastItem.data.isOpen()) {
|
if (d->lastItem.metaData.url() == url && d->lastItem.data.isOpen()) {
|
||||||
|
@ -421,7 +423,7 @@ QIODevice *QNetworkDiskCache::data(const QUrl &url)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
buffer->open(QBuffer::ReadOnly);
|
buffer->open(QBuffer::ReadOnly);
|
||||||
return buffer.take();
|
return buffer.release();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
Loading…
Reference in New Issue