From 85b1eacc37399cc9b7442971bf7720ccf16d8d3e Mon Sep 17 00:00:00 2001 From: Michael Pavone Date: Thu, 17 Jan 2019 19:14:09 -0800 Subject: Fix SMD ROM support --- blastem.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'blastem.c') diff --git a/blastem.c b/blastem.c index 37ac3e3..65d1819 100644 --- a/blastem.c +++ b/blastem.c @@ -76,14 +76,16 @@ int load_smd_rom(ROMFILE f, void **buffer) size_t filesize = 512 * 1024; size_t readsize = 0; - uint16_t *dst = malloc(filesize); + uint16_t *dst, *buf; + dst = buf = malloc(filesize); size_t read; do { if ((readsize + SMD_BLOCK_SIZE > filesize)) { filesize *= 2; - dst = realloc(dst, filesize); + buf = realloc(buf, filesize); + dst = buf + readsize/sizeof(uint16_t); } read = romread(block, 1, SMD_BLOCK_SIZE, f); if (read > 0) { @@ -95,7 +97,7 @@ int load_smd_rom(ROMFILE f, void **buffer) } while(read > 0); romclose(f); - *buffer = dst; + *buffer = buf; return readsize; } -- cgit v1.2.3