Преглед изворни кода

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

This bug was only seen when MultiDiskAdaptor was used.
Tatsuhiro Tsujikawa пре 11 година
родитељ
комит
442e460055
1 измењених фајлова са 3 додато и 0 уклоњено
  1. 3 0
      src/MultiDiskAdaptor.cc

+ 3 - 0
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)) <