GBA: Cap out the ROM loaded size
Jeffrey Pfau jeffrey@endrift.com
Wed, 10 Dec 2014 01:44:22 -0800
1 files changed,
4 insertions(+),
1 deletions(-)
jump to
M
src/gba/gba.c
→
src/gba/gba.c
@@ -424,7 +424,10 @@ void GBALoadROM(struct GBA* gba, struct VFile* vf, struct VFile* sav, const char* fname) {
gba->romVf = vf; gba->pristineRomSize = vf->seek(vf, 0, SEEK_END); vf->seek(vf, 0, SEEK_SET); - gba->pristineRom = vf->map(vf, SIZE_CART0, MAP_READ); + if (gba->pristineRomSize > SIZE_CART0) { + gba->pristineRomSize = SIZE_CART0; + } + gba->pristineRom = vf->map(vf, gba->pristineRomSize, MAP_READ); gba->memory.rom = gba->pristineRom; gba->activeFile = fname; gba->memory.romSize = gba->pristineRomSize;