diff --git a/src/backend/metadata.cpp b/src/backend/metadata.cpp index 8c3ae076..287a484c 100644 --- a/src/backend/metadata.cpp +++ b/src/backend/metadata.cpp @@ -639,16 +639,16 @@ namespace boss { map issues; if (tags.find(Tag("Filter")) == tags.end()) { for (vector::const_iterator it=masters.begin(), endIt=masters.end(); it != endIt; ++it) { - if (!boost::filesystem::exists(game.DataPath() / *it)) + if (!boost::filesystem::exists(game.DataPath() / *it) && !boost::filesystem::exists(game.DataPath() / (*it + ".ghost"))) issues.insert(pair(*it,false)); } } for (set::const_iterator it=requirements.begin(), endIt=requirements.end(); it != endIt; ++it) { - if (!boost::filesystem::exists(game.DataPath() / it->Name())) + if (!boost::filesystem::exists(game.DataPath() / it->Name()) && !(IsPlugin(it->Name()) && boost::filesystem::exists(game.DataPath() / (it->Name() + ".ghost")))) issues.insert(pair(it->DisplayName(),false)); } for (set::const_iterator it=incompatibilities.begin(), endIt=incompatibilities.end(); it != endIt; ++it) { - if (boost::filesystem::exists(game.DataPath() / it->Name())) + if (!boost::filesystem::exists(game.DataPath() / it->Name()) && !(IsPlugin(it->Name()) && boost::filesystem::exists(game.DataPath() / (it->Name() + ".ghost")))) issues.insert(pair(it->DisplayName(),true)); } return issues;