diff --git a/src/state.cpp b/src/state.cpp index 65a7302..61f3f82 100644 --- a/src/state.cpp +++ b/src/state.cpp @@ -74,6 +74,11 @@ void _sm_pop_stack(sm_state* state) auto last = unbox(state->current); state->current = last.prev; + if(last.rval) + { + sm_free_user(last.rval); + unbox(last.rval); + } _sm_free_all_pages(last.user.next); _sm_free_page(&last.user); }