• Sam Lantinga's avatar
    Fixed bug #1090 (SDL_BlitCopyOverlap() assumes memcpy() operates in order) · d2b922f5
    Sam Lantinga authored
    Even if we're blitting between two different surfaces their pixels might still overlap, because of SDL_CreateRGBSurfaceFrom(), so always use SDL_BlitCopy() and check for overlap in that function.
    
    When handling overlapping surfaces, don't assume that memcpy() iterates forward, instead use memmove() correctly, and provide a fallback implementation of SDL_memmove() that handles the different cases.
    
    Fixed a bug with SDL_memset() not completely filling lengths that aren't a multiple of 4.
    Optimized SDL_memcpy() a bit using the same technique as SDL_memset().
    d2b922f5
Name
Last commit
Last update
..
atomic Loading commit data...
audio Loading commit data...
core Loading commit data...
cpuinfo Loading commit data...
events Loading commit data...
file Loading commit data...
haptic Loading commit data...
joystick Loading commit data...
libm Loading commit data...
loadso Loading commit data...
main Loading commit data...
power Loading commit data...
render Loading commit data...
stdlib Loading commit data...
thread Loading commit data...
timer Loading commit data...
video Loading commit data...
SDL.c Loading commit data...
SDL_assert.c Loading commit data...
SDL_assert_c.h Loading commit data...
SDL_compat.c Loading commit data...
SDL_error.c Loading commit data...
SDL_error_c.h Loading commit data...
SDL_fatal.c Loading commit data...
SDL_fatal.h Loading commit data...
SDL_hints.c Loading commit data...
SDL_log.c Loading commit data...