diff options
author | Felix Fietkau <nbd@nbd.name> | 2025-02-06 14:35:06 +0100 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2025-02-10 10:42:43 +0100 |
commit | b32321beb112cfbca54554f9c685cd34bbbee0e4 (patch) | |
tree | d4d896e41976b40d20966b924afba9805db8654f /types.c | |
parent | 4bc1549bccccd13eaf759a403333804de5610528 (diff) |
vm: fix crash due to stale frame pointer
In some cases, calls made while processing insns in uc_vm_execute_chunk can
lead to realloc of vm->callframes without reloading the current frame pointer.
This was observed with I_ADD (which can call an object's tostring method).
Instead of playing whac-a-mole with insns affecting the frame pointer, let's
reload it whenever necessary.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
[further refactor to avoid redundant null pointer checks, fix native function
callframe stop condition while looking for exception handler]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Diffstat (limited to 'types.c')
0 files changed, 0 insertions, 0 deletions