diff options
Diffstat (limited to 'graphics')
-rw-r--r-- | graphics/fonts/winfont.cpp | 24 |
1 files changed, 5 insertions, 19 deletions
diff --git a/graphics/fonts/winfont.cpp b/graphics/fonts/winfont.cpp index 6494f006b3..ad5b36ec23 100644 --- a/graphics/fonts/winfont.cpp +++ b/graphics/fonts/winfont.cpp @@ -77,27 +77,13 @@ static WinFontDirEntry readDirEntry(Common::SeekableReadStream &stream) { } bool WinFont::loadFromFON(const Common::String &fileName, const WinFontDirEntry &dirEntry) { - Common::WinResources *exe; - - // First try loading via the NE code - exe = new Common::NEResources(); - if (exe->loadFromEXE(fileName)) { - bool ok = loadFromEXE(exe, fileName, dirEntry); - delete exe; - return ok; - } - delete exe; + Common::WinResources *exe = Common::WinResources::createFromEXE(fileName); + if (!exe) + return false; - // Then try loading via the PE code - exe = new Common::PEResources(); - if (exe->loadFromEXE(fileName)) { - bool ok = loadFromEXE(exe, fileName, dirEntry); - delete exe; - return ok; - } + bool ok = loadFromEXE(exe, fileName, dirEntry); delete exe; - - return false; + return ok; } bool WinFont::loadFromEXE(Common::WinResources *exe, const Common::String &fileName, const WinFontDirEntry &dirEntry) { |