From 49976ea2a98dcb6052bd6cf3a65f730e55727330 Mon Sep 17 00:00:00 2001 From: Robin Salen <30937548+Nashtare@users.noreply.github.com> Date: Thu, 19 Oct 2023 07:55:39 -0400 Subject: [PATCH] Check gas in sys_stop (#1297) --- evm/src/cpu/kernel/asm/core/terminate.asm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/evm/src/cpu/kernel/asm/core/terminate.asm b/evm/src/cpu/kernel/asm/core/terminate.asm index fb01f7aa..7bb7842f 100644 --- a/evm/src/cpu/kernel/asm/core/terminate.asm +++ b/evm/src/cpu/kernel/asm/core/terminate.asm @@ -6,6 +6,10 @@ global sys_stop: // Set the parent context's return data size to 0. %mstore_parent_context_metadata(@CTX_METADATA_RETURNDATA_SIZE, 0) + // This makes sure the gas used hasn't overflowed the gaslimit. + // This could happen when executing a native instruction (i.e. not a syscall). + %charge_gas_const(0) + %leftover_gas // stack: leftover_gas PUSH 1 // success