diff --git a/enhanced/drlvm/trunk/vm/port/src/lil/ipf/pim/m2n_ipf.cpp b/enhanced/drlvm/trunk/vm/port/src/lil/ipf/pim/m2n_ipf.cpp index 076cacd..599e7b2 100644 --- a/enhanced/drlvm/trunk/vm/port/src/lil/ipf/pim/m2n_ipf.cpp +++ b/enhanced/drlvm/trunk/vm/port/src/lil/ipf/pim/m2n_ipf.cpp @@ -244,23 +244,15 @@ void m2n_gen_set_local_handles_imm(Merce emitter->ipf_movi(M2N_OBJECT_HANDLES, (int)imm_val); } -void m2n_pop_local_handles() { +static void m2n_pop_local_handles() { assert(!hythread_is_suspend_enabled()); + + exn_rethrow_if_pending(); + M2nFrame *m2n = m2n_get_last_frame(); free_local_object_handles3(m2n_get_local_handles(m2n)); } -static void m2n_pop_local_handles() { - assert(!hythread_is_suspend_enabled()); - - if (exn_raised()) { - exn_rethrow(); - } - - M2nFrame * m2n = m2n_get_last_frame(); - free_local_object_handles2(m2n->local_object_handles); -} - static void m2n_free_local_handles() { assert(!hythread_is_suspend_enabled());