diff options
Diffstat (limited to 'src/network/access/qnetworkdiskcache.cpp')
-rw-r--r-- | src/network/access/qnetworkdiskcache.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/network/access/qnetworkdiskcache.cpp b/src/network/access/qnetworkdiskcache.cpp index d64d697013..2f2d1ab9a9 100644 --- a/src/network/access/qnetworkdiskcache.cpp +++ b/src/network/access/qnetworkdiskcache.cpp @@ -559,6 +559,20 @@ qint64 QNetworkDiskCache::expire() break; QString name = i.value(); QFile file(name); + + if (name.contains(PREPARED_SLASH)) { + QHashIterator<QIODevice*, QCacheItem*> iterator(d->inserting); + while (iterator.hasNext()) { + iterator.next(); + QCacheItem *item = iterator.value(); + if (item && item->file && item->file->fileName() == name) { + delete item->file; + item->file = 0; + break; + } + } + } + qint64 size = file.size(); file.remove(); totalSize -= size; |