From a0290954d69e3ad105cb02e8378b25a4f552430a Mon Sep 17 00:00:00 2001 From: Mathias Froehlich Date: Sat, 17 Dec 2011 19:08:18 +0100 Subject: [PATCH] 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. --- simgear/scene/tgdb/ReaderWriterSPT.cxx | 4 ++++ 1 file changed, 4 insertions(+) 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);