aboutsummaryrefslogtreecommitdiff
path: root/kyra/codecs.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kyra/codecs.cpp')
-rw-r--r--kyra/codecs.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/kyra/codecs.cpp b/kyra/codecs.cpp
index 1205442ec1..e90ebdcd68 100644
--- a/kyra/codecs.cpp
+++ b/kyra/codecs.cpp
@@ -84,9 +84,13 @@ int Compression::decode80(const uint8* image_in, uint8* image_out) {
copyp = (const uint8*)&image_out[READ_LE_UINT16(readp)];
readp += 2;
- memcpy(writep, copyp, count);
- writep += count;
- copyp += count;
+ // FIXME: Using memmove sometimes segfaults
+ // (reproducably for Ender), which suggests something Bad here
+ //memmove(writep, copyp, count);
+ //writep += count;
+ //copyp += count;
+ while (count--)
+ *writep++ = *copyp++;
} else if (count == 0x3e) {
//command 3 (11111110 c c v): fill