summaryrefslogtreecommitdiff
path: root/src/MultiDiskAdaptor.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2014-06-08 16:43:22 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2014-06-08 16:43:22 +0900
commit442e460055fdf045cc70c87fac9f0dd481ad55e2 (patch)
treed46a4ca752c2cfcf48c41b71aebda9553aa25d7d /src/MultiDiskAdaptor.cc
parente2ff45f32686b9844ccd84d53b1f081fa9896596 (diff)
Fix bug that zero length file is not opened when flushing cache
This bug was only seen when MultiDiskAdaptor was used.
Diffstat (limited to 'src/MultiDiskAdaptor.cc')
-rw-r--r--src/MultiDiskAdaptor.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/MultiDiskAdaptor.cc b/src/MultiDiskAdaptor.cc
index 3ca64356..825b04cc 100644
--- a/src/MultiDiskAdaptor.cc
+++ b/src/MultiDiskAdaptor.cc
@@ -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)) <