From: Mathias Froehlich Date: Sat, 17 Dec 2011 18:08:18 +0000 (+0100) Subject: Return ReadResult::FILE_NOT_HANDLED for unknown extensions. X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=a0290954d69e3ad105cb02e8378b25a4f552430a;p=simgear.git Return ReadResult::FILE_NOT_HANDLED for unknown extensions. This fixes a problem with fonts no longer being correctly loaded as a side effect of the spt meta object loader. The readObject slot is obviously being called for several unrelated file extensions. To make sure the search continues, osgDB::ReaderWriter::ReadResult::FILE_NOT_HANDLED needs to be returned in this case. --- diff --git a/simgear/scene/tgdb/ReaderWriterSPT.cxx b/simgear/scene/tgdb/ReaderWriterSPT.cxx index 09edea54..02c3e142 100644 --- a/simgear/scene/tgdb/ReaderWriterSPT.cxx +++ b/simgear/scene/tgdb/ReaderWriterSPT.cxx @@ -54,6 +54,10 @@ ReaderWriterSPT::className() const osgDB::ReaderWriter::ReadResult ReaderWriterSPT::readObject(const std::string& fileName, const osgDB::Options* options) const { + // We get called with different extensions. To make sure search continues, + // we need to return FILE_NOT_HANDLED in this case. + if (osgDB::getLowerCaseFileExtension(fileName) != "spt") + return ReadResult(osgDB::ReaderWriter::ReadResult::FILE_NOT_HANDLED); if (fileName != "state.spt") return ReadResult(osgDB::ReaderWriter::ReadResult::FILE_NOT_FOUND);