aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/sci/graphics/picture.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/engines/sci/graphics/picture.cpp b/engines/sci/graphics/picture.cpp
index 3edb8ab18e..a59153f116 100644
--- a/engines/sci/graphics/picture.cpp
+++ b/engines/sci/graphics/picture.cpp
@@ -533,10 +533,16 @@ void GfxPicture::drawVectorData(byte *data, int dataSize) {
case PIC_OP_SET_PATTERN:
if (_resourceType >= SCI_PICTURE_TYPE_SCI11) {
if (strcmp(g_sci->getGameID(), "sq4") == 0) {
- // WORKAROUND: For SQ4 / picture 381 handle this like a terminator
+ // WORKAROUND: For SQ4 / for some pictures handle this like a terminator
// This picture includes garbage data, first a set pattern w/o parameter and then short pattern
- if (_resourceId == 381)
+ // I guess that garbage is a left over from the sq4-floppy (sci1) to sq4-cd (sci1.1) conversion
+ switch (_resourceId) {
+ case 381:
+ case 376:
return;
+ default:
+ break;
+ }
}
error("pic-operation set pattern inside sci1.1+ vector data");
}