Commit cc809bcb authored by David Turner's avatar David Turner
Browse files

fixed an ugly bug that caused some unaligned access

on 64-bits platforms.. Thnks a lot to Tom !!
parent 60402683
......@@ -425,11 +425,23 @@
byte* _read = read;
byte* limit = _write + 4*w;
for ( ; _write < limit; _write += 4, _read++ )
if (sizeof(long) > 4)
{
byte color = *_read;
*(unsigned long*)_write = surface->color[color].pixel;
for ( ; _write < limit; _write += 4, _read++ )
{
byte color = *_read;
*(unsigned int*)_write = surface->color[color].pixel;
}
}
else
{
for ( ; _write < limit; _write += 4, _read++ )
{
byte color = *_read;
*(unsigned long*)_write = surface->color[color].pixel;
}
}
write += target->pitch;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment