fixed global-buffer-overflow reported by AddressSanitizer in src/emu/cpu/alto2/a2roms.c (nw)

This commit is contained in:
Oliver Stöneberg 2014-04-26 06:17:01 +00:00
parent c0cd48a3f2
commit 3f9234b23f

View File

@ -126,9 +126,10 @@ UINT8* prom_load(running_machine& machine, const prom_load_t* prom, const UINT8*
break; break;
} }
UINT8* dst = reinterpret_cast<UINT8*>(array); UINT8* base = reinterpret_cast<UINT8*>(array);
for (int page = 0; page < pages; page++) for (int page = 0; page < pages; page++)
{ {
UINT8* dst = base + (prom->type * prom->size * page);
for (int segment = 0; segment < segments; segment++, prom++) for (int segment = 0; segment < segments; segment++, prom++)
{ {
for (UINT32 src_addr = 0; src_addr < prom->size; src_addr++) for (UINT32 src_addr = 0; src_addr < prom->size; src_addr++)
@ -148,7 +149,6 @@ UINT8* prom_load(running_machine& machine, const prom_load_t* prom, const UINT8*
} }
src += prom->size; src += prom->size;
} }
dst += prom->type * prom->size;
} }
#if DEBUG_PROM_LOAD #if DEBUG_PROM_LOAD