diff options
author | aliaspider | 2014-10-30 01:51:26 +0100 |
---|---|---|
committer | aliaspider | 2014-10-30 01:51:26 +0100 |
commit | 2b16ed99405805c16260085f46c753792c1af32d (patch) | |
tree | f1980a92da37f4322033b5fea412a3aae6962623 /source | |
parent | 628df4d2923b5a42e0378c4ede89178f85e0e0c8 (diff) | |
download | snes9x2005-2b16ed99405805c16260085f46c753792c1af32d.tar.gz snes9x2005-2b16ed99405805c16260085f46c753792c1af32d.tar.bz2 snes9x2005-2b16ed99405805c16260085f46c753792c1af32d.zip |
add safety to buffer reads to deal with negative offsets.
Diffstat (limited to 'source')
-rw-r--r-- | source/gfx.h | 5 | ||||
-rw-r--r-- | source/tile.c | 4 |
2 files changed, 5 insertions, 4 deletions
diff --git a/source/gfx.h b/source/gfx.h index 55b31bf..18d74f8 100644 --- a/source/gfx.h +++ b/source/gfx.h @@ -114,6 +114,11 @@ void S9xSyncSpeed(); struct SGFX { // Initialize these variables + uint8* Screen_buffer; + uint8* SubScreen_buffer; + uint8* ZBuffer_buffer; + uint8* SubZBuffer_buffer; + uint8* Screen; uint8* SubScreen; uint8* ZBuffer; diff --git a/source/tile.c b/source/tile.c index 2211421..31c065a 100644 --- a/source/tile.c +++ b/source/tile.c @@ -467,8 +467,6 @@ static void WRITE_4PIXELS16_ADD(int32 Offset, uint8* Pixels, uint16* ScreenColors) { uint8 Pixel, N; - if (Offset < 0) - Offset = 0; uint16* Screen = (uint16*) GFX.S + Offset; uint8* Depth = GFX.ZBuffer + Offset; @@ -499,8 +497,6 @@ static void WRITE_4PIXELS16_FLIPPED_ADD(int32 Offset, uint8* Pixels, uint16* ScreenColors) { uint8 Pixel, N; - if (Offset < 0) - Offset = 0; uint16* Screen = (uint16*) GFX.S + Offset; uint8* Depth = GFX.ZBuffer + Offset; |