From 9a6376dbf99eaa651d94d1650fb7756343420cfe Mon Sep 17 00:00:00 2001 From: SarahW Date: Sat, 2 Feb 2019 13:46:06 +0000 Subject: [PATCH] Clear codeblock physical addresses when resetting codegen. Fixes out-of-bounds accesses to the pages[] array during reset. --- src/codegen_backend.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/codegen_backend.c b/src/codegen_backend.c index c047ba3..4874233 100644 --- a/src/codegen_backend.c +++ b/src/codegen_backend.c @@ -161,7 +161,11 @@ void codegen_reset() codeblock_t *block = &codeblock[c]; if (block->pc != BLOCK_PC_INVALID) + { + block->phys = 0; + block->phys_2 = 0; delete_block(block); + } } memset(codeblock, 0, BLOCK_SIZE * sizeof(codeblock_t));