diff options
Diffstat (limited to 'src/DefaultPieceStorage.cc')
| -rw-r--r-- | src/DefaultPieceStorage.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/DefaultPieceStorage.cc b/src/DefaultPieceStorage.cc index ceff957b..e08b1b18 100644 --- a/src/DefaultPieceStorage.cc +++ b/src/DefaultPieceStorage.cc @@ -685,7 +685,7 @@ std::shared_ptr<DiskAdaptor> DefaultPieceStorage::getDiskAdaptor() WrDiskCache* DefaultPieceStorage::getWrDiskCache() { return wrDiskCache_; } -void DefaultPieceStorage::flushWrDiskCacheEntry() +void DefaultPieceStorage::flushWrDiskCacheEntry(bool releaseEntries) { if (!wrDiskCache_) { return; @@ -697,7 +697,9 @@ void DefaultPieceStorage::flushWrDiskCacheEntry() auto ce = piece->getWrDiskCacheEntry(); if (ce) { piece->flushWrCache(wrDiskCache_); - piece->releaseWrCache(wrDiskCache_); + if (releaseEntries) { + piece->releaseWrCache(wrDiskCache_); + } } } } |
