aboutsummaryrefslogtreecommitdiff
path: root/engines/wintermute/ad
diff options
context:
space:
mode:
authorEinar Johan Trøan Sømåen2012-07-22 22:27:07 +0200
committerEinar Johan Trøan Sømåen2012-07-22 22:27:07 +0200
commit3bcbd1881c9a22a594707726154c568d187e313b (patch)
tree05ee6571359b1396759316478e97b52057600a44 /engines/wintermute/ad
parent6fb641111f28d02714064ae193e39e4f1e60ce35 (diff)
downloadscummvm-rg350-3bcbd1881c9a22a594707726154c568d187e313b.tar.gz
scummvm-rg350-3bcbd1881c9a22a594707726154c568d187e313b.tar.bz2
scummvm-rg350-3bcbd1881c9a22a594707726154c568d187e313b.zip
WINTERMUTE: Avoid opening files when checking hasFile()
Diffstat (limited to 'engines/wintermute/ad')
-rw-r--r--engines/wintermute/ad/ad_game.cpp10
-rw-r--r--engines/wintermute/ad/ad_sentence.cpp7
2 files changed, 4 insertions, 13 deletions
diff --git a/engines/wintermute/ad/ad_game.cpp b/engines/wintermute/ad/ad_game.cpp
index e10ec1bf6d..aa350b0e4c 100644
--- a/engines/wintermute/ad/ad_game.cpp
+++ b/engines/wintermute/ad/ad_game.cpp
@@ -1904,18 +1904,12 @@ char *AdGame::findSpeechFile(char *stringID) {
for (int i = 0; i < _speechDirs.getSize(); i++) {
sprintf(ret, "%s%s.ogg", _speechDirs[i], stringID);
- Common::SeekableReadStream *file = _fileManager->openFile(ret); // TODO: Replace with hasFile
- if (file) {
- _fileManager->closeFile(file);
+ if (_fileManager->hasFile(ret))
return ret;
- }
sprintf(ret, "%s%s.wav", _speechDirs[i], stringID);
- file = _fileManager->openFile(ret);
- if (file) {
- _fileManager->closeFile(file);
+ if (_fileManager->hasFile(ret))
return ret;
- }
}
delete [] ret;
return NULL;
diff --git a/engines/wintermute/ad/ad_sentence.cpp b/engines/wintermute/ad/ad_sentence.cpp
index ba59f57451..ad3a291e16 100644
--- a/engines/wintermute/ad/ad_sentence.cpp
+++ b/engines/wintermute/ad/ad_sentence.cpp
@@ -251,11 +251,8 @@ bool AdSentence::setupTalkFile(const char *soundFilename) {
AnsiString talkDefFileName = PathUtil::combine(path, name + ".talk");
- Common::SeekableReadStream *file = _gameRef->_fileManager->openFile(talkDefFileName.c_str());
- if (file) {
- _gameRef->_fileManager->closeFile(file);
- } else return STATUS_OK; // no talk def file found
-
+ if (!_gameRef->_fileManager->hasFile(talkDefFileName))
+ return STATUS_OK; // no talk def file found
_talkDef = new AdTalkDef(_gameRef);
if (!_talkDef || DID_FAIL(_talkDef->loadFile(talkDefFileName.c_str()))) {