From 2c8e6848d3b1d13529e83d8cf76e0a2a458fea52 Mon Sep 17 00:00:00 2001 From: Sverker Eriksson Date: Thu, 28 Mar 2019 19:32:52 +0100 Subject: erts: Fix bug in process_info(reductions) returning incorrect result as * current process might not be RUNNING in which case REDS_IN is actually used as def_arg_reg[5] * FCALLS might not have been swapped out * the SAVED_CALLS case was wrong and returned number of reds left --- erts/emulator/beam/msg_instrs.tab | 1 + 1 file changed, 1 insertion(+) (limited to 'erts/emulator/beam/msg_instrs.tab') diff --git a/erts/emulator/beam/msg_instrs.tab b/erts/emulator/beam/msg_instrs.tab index 9bf3aefaca..a6a0dec451 100644 --- a/erts/emulator/beam/msg_instrs.tab +++ b/erts/emulator/beam/msg_instrs.tab @@ -105,6 +105,7 @@ i_loop_rec(Dest) { $SET_CP_I_ABS(I); c_p->arity = 0; c_p->current = NULL; + c_p->fcalls = FCALLS; FCALLS -= erts_proc_sig_receive_helper(c_p, FCALLS, neg_o_reds, &msgp, &get_out); SWAPIN; -- cgit v1.2.3