diff --git a/simgear/io/HTTPRepository.cxx b/simgear/io/HTTPRepository.cxx index ad7325e1..57af6e68 100644 --- a/simgear/io/HTTPRepository.cxx +++ b/simgear/io/HTTPRepository.cxx @@ -313,7 +313,15 @@ public: simgear::Dir d(absolutePath()); PathList fsChildren = d.children(0); - PathList orphans = d.children(0); + PathList orphans = fsChildren; + + // on Windows, children() will return our .hashes and .dirIndex + // entries; skip them. + orphans.erase(std::remove_if(orphans.begin(), orphans.end(), + [](const SGPath &p) { + return p.file().front() == '.'; + }), + orphans.end()); for (const auto &c : children) { // Check if the file exists