aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/decompressor.cpp
diff options
context:
space:
mode:
authorMartin Kiewitz2010-06-23 16:49:03 +0000
committerMartin Kiewitz2010-06-23 16:49:03 +0000
commit496905dcc3f0871ef763de133010dc3b996de21d (patch)
tree5d9730d44b0a1faf0d1c5fb35a5d83b6a1cca3aa /engines/sci/decompressor.cpp
parent0a102981f004733c9e7956ae58b4d0050db38e2b (diff)
downloadscummvm-rg350-496905dcc3f0871ef763de133010dc3b996de21d.tar.gz
scummvm-rg350-496905dcc3f0871ef763de133010dc3b996de21d.tar.bz2
scummvm-rg350-496905dcc3f0871ef763de133010dc3b996de21d.zip
SCI: dont write palette in reorderView() if there is no palette :P
svn-id: r50184
Diffstat (limited to 'engines/sci/decompressor.cpp')
-rw-r--r--engines/sci/decompressor.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/engines/sci/decompressor.cpp b/engines/sci/decompressor.cpp
index 84af50b596..96c7f24ef6 100644
--- a/engines/sci/decompressor.cpp
+++ b/engines/sci/decompressor.cpp
@@ -574,15 +574,17 @@ void DecompressorLZW::reorderView(byte *src, byte *dest) {
for (c = 0; c < cel_total; c++)
decodeRLE(&rle_ptr, &pix_ptr, cc_pos[c] + 8, cc_lengths[c]);
- *writer++ = 'P';
- *writer++ = 'A';
- *writer++ = 'L';
+ if (pal_offset) {
+ *writer++ = 'P';
+ *writer++ = 'A';
+ *writer++ = 'L';
- for (c = 0; c < 256; c++)
- *writer++ = c;
+ for (c = 0; c < 256; c++)
+ *writer++ = c;
- seeker -= 4; /* The missing four. Don't ask why. */
- memcpy(writer, seeker, 4*256 + 4);
+ seeker -= 4; /* The missing four. Don't ask why. */
+ memcpy(writer, seeker, 4*256 + 4);
+ }
free(cc_pos);
free(cc_lengths);