[Scummvm-cvs-logs] SF.net SVN: scummvm:[54867] scummvm/trunk/engines/mohawk/graphics.cpp
mthreepwood at users.sourceforge.net
mthreepwood at users.sourceforge.net
Sat Dec 11 19:38:27 CET 2010
Revision: 54867
http://scummvm.svn.sourceforge.net/scummvm/?rev=54867&view=rev
Author: mthreepwood
Date: 2010-12-11 18:38:27 +0000 (Sat, 11 Dec 2010)
Log Message:
-----------
MOHAWK: Fix some Myst ME cards that store PICT images in WDIB resources (see myst 4013)
Modified Paths:
--------------
scummvm/trunk/engines/mohawk/graphics.cpp
Modified: scummvm/trunk/engines/mohawk/graphics.cpp
===================================================================
--- scummvm/trunk/engines/mohawk/graphics.cpp 2010-12-11 17:00:22 UTC (rev 54866)
+++ scummvm/trunk/engines/mohawk/graphics.cpp 2010-12-11 18:38:27 UTC (rev 54867)
@@ -323,15 +323,17 @@
// The PICT resource exists. However, it could still contain a MystBitmap
// instead of a PICT image...
dataStream = _vm->getResource(ID_PICT, id);
+ } else // No PICT, so the WDIB must exist. Let's go grab it.
+ dataStream = _vm->getResource(ID_WDIB, id);
+ if (_vm->getFeatures() & GF_ME) {
// Here we detect whether it's really a PICT or a WDIB. Since a MystBitmap
// would be compressed, there's no way to detect for the BM without a hack.
// So, we search for the PICT version opcode for detection.
dataStream->seek(512 + 10); // 512 byte pict header
isPict = (dataStream->readUint32BE() == 0x001102FF);
dataStream->seek(0);
- } else // No PICT, so the WDIB must exist. Let's go grab it.
- dataStream = _vm->getResource(ID_WDIB, id);
+ }
if (isPict)
mhkSurface = new MohawkSurface(_pictDecoder->decodeImage(dataStream));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list