summaryrefslogtreecommitdiff
path: root/erts/emulator/beam/emu/beam_emu.c
diff options
context:
space:
mode:
Diffstat (limited to 'erts/emulator/beam/emu/beam_emu.c')
-rw-r--r--erts/emulator/beam/emu/beam_emu.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/erts/emulator/beam/emu/beam_emu.c b/erts/emulator/beam/emu/beam_emu.c
index ec71dd2088..dd35859559 100644
--- a/erts/emulator/beam/emu/beam_emu.c
+++ b/erts/emulator/beam/emu/beam_emu.c
@@ -717,7 +717,7 @@ erts_beam_jump_table(void)
void
erts_prepare_bs_construct_fail_info(Process* c_p, const BeamInstr* p, Eterm reason, Eterm Info)
{
- Eterm* hp = HeapFragOnlyAlloc(c_p, MAP3_SZ+3+1);
+ Eterm* hp;
Eterm cause_tuple;
Eterm op;
Eterm error_info;
@@ -758,8 +758,9 @@ erts_prepare_bs_construct_fail_info(Process* c_p, const BeamInstr* p, Eterm reas
break;
}
- cause_tuple = TUPLE3(hp, make_small(segment), op, Info);
- hp += 4;
+ hp = HeapFragOnlyAlloc(c_p, MAP3_SZ+4+1);
+ cause_tuple = TUPLE4(hp, make_small(segment), op, Info, NIL);
+ hp += 5;
error_info = MAP3(hp,
am_cause, cause_tuple,
am_function, am_format_bs_fail,