Fix bug that zero length file is not opened when flushing cache

This bug was only seen when MultiDiskAdaptor was used.
pull/235/merge
Tatsuhiro Tsujikawa 2014-06-08 16:43:22 +09:00
parent e2ff45f326
commit 442e460055
1 changed files with 3 additions and 0 deletions

View File

@ -405,6 +405,9 @@ void MultiDiskAdaptor::writeCache(const WrDiskCacheEntry* entry)
for(; dent != eod; ++dent) {
int64_t lstart = 0, lp = 0;
auto& fent = (*dent)->getFileEntry();
if(fent->getLength() == 0) {
continue;
}
for(; i != eoi;) {
if(std::max(fent->getOffset(),
static_cast<int64_t>((*i)->goff + celloff)) <