diff options
author | Travis Howell | 2003-08-14 08:47:47 +0000 |
---|---|---|
committer | Travis Howell | 2003-08-14 08:47:47 +0000 |
commit | 6d1272289901a8384f8abe3a53385a12a7812590 (patch) | |
tree | 2cb67f8e7c5dbf9ad4a8bfdeed6cd1ab08567b03 /scumm | |
parent | c022f020f1dfa677f1d7d70ac1157b2e7d2c4c90 (diff) | |
download | scummvm-rg350-6d1272289901a8384f8abe3a53385a12a7812590.tar.gz scummvm-rg350-6d1272289901a8384f8abe3a53385a12a7812590.tar.bz2 scummvm-rg350-6d1272289901a8384f8abe3a53385a12a7812590.zip |
Rearrange to be safer
svn-id: r9686
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/resource.cpp | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/scumm/resource.cpp b/scumm/resource.cpp index a45f1738c4..5f0289c6e0 100644 --- a/scumm/resource.cpp +++ b/scumm/resource.cpp @@ -1484,20 +1484,7 @@ int Scumm::readSoundResourceSmallHeader(int type, int idx) { } } - if (ro_offs != 0) { - _fileHandle.seek(ro_offs - 2, SEEK_SET); - _fileHandle.read(createResource(type, idx, ro_size + 2), ro_size + 2); - return 1; - } else if (((_midiDriver == MD_PCJR) || (_midiDriver == MD_PCSPK)) && wa_offs != 0) { - if (_features & GF_OLD_BUNDLE) { - _fileHandle.seek(wa_offs, SEEK_SET); - _fileHandle.read(createResource(type, idx, wa_size), wa_size); - } else { - _fileHandle.seek(wa_offs - 6, SEEK_SET); - _fileHandle.read(createResource(type, idx, wa_size + 6), wa_size + 6); - } - return 1; - } else if (ad_offs != 0) { + if ((_midiDriver == MD_ADLIB) && ad_offs != 0) { // AD resources have a header, instrument definitions and one MIDI track. // We build an 'ADL ' resource from that: // 8 bytes resource header @@ -1518,6 +1505,19 @@ int Scumm::readSoundResourceSmallHeader(int type, int idx) { _fileHandle.read(ptr, ad_size - 6); return convertADResource(type, idx, ptr, ad_size - 6); } + } else if (((_midiDriver == MD_PCJR) || (_midiDriver == MD_PCSPK)) && wa_offs != 0) { + if (_features & GF_OLD_BUNDLE) { + _fileHandle.seek(wa_offs, SEEK_SET); + _fileHandle.read(createResource(type, idx, wa_size), wa_size); + } else { + _fileHandle.seek(wa_offs - 6, SEEK_SET); + _fileHandle.read(createResource(type, idx, wa_size + 6), wa_size + 6); + } + return 1; + } else if (ro_offs != 0) { + _fileHandle.seek(ro_offs - 2, SEEK_SET); + _fileHandle.read(createResource(type, idx, ro_size + 2), ro_size + 2); + return 1; } res.roomoffs[type][idx] = 0xFFFFFFFF; return 0; |