diff options
author | Lukas Larsson <[email protected]> | 2018-09-26 11:55:01 +0200 |
---|---|---|
committer | Lukas Larsson <[email protected]> | 2019-02-22 11:12:53 +0100 |
commit | f2c4f6f83deecba0c2527e520f0f18fba7d84815 (patch) | |
tree | 5009cc4300cdca28dc0f76daaa541051f8d44a01 /erts/emulator/beam/bif.c | |
parent | 6686877360432144bacbf4e95c23b1232eab1b08 (diff) | |
download | otp-f2c4f6f83deecba0c2527e520f0f18fba7d84815.tar.gz otp-f2c4f6f83deecba0c2527e520f0f18fba7d84815.tar.bz2 otp-f2c4f6f83deecba0c2527e520f0f18fba7d84815.zip |
erts: Implement fragmentation of distrubution messages
Diffstat (limited to 'erts/emulator/beam/bif.c')
-rw-r--r-- | erts/emulator/beam/bif.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/erts/emulator/beam/bif.c b/erts/emulator/beam/bif.c index ff7db0e742..a71907505c 100644 --- a/erts/emulator/beam/bif.c +++ b/erts/emulator/beam/bif.c @@ -225,6 +225,7 @@ BIF_RETTYPE link_1(BIF_ALIST_1) code = erts_dsig_send_link(&dsd, BIF_P->common.id, BIF_ARG_1); if (code == ERTS_DSIG_SEND_YIELD) ERTS_BIF_YIELD_RETURN(BIF_P, am_true); + ASSERT(code == ERTS_DSIG_SEND_OK); BIF_RET(am_true); break; } @@ -2094,6 +2095,7 @@ BIF_RETTYPE send_3(BIF_ALIST_3) ctx->return_term = am_ok; ctx->dss.reds = (Sint) (ERTS_BIF_REDS_LEFT(p) * TERM_TO_BINARY_LOOP_FACTOR); ctx->dss.phase = ERTS_DSIG_SEND_PHASE_INIT; + ctx->dss.from = BIF_P->common.id; while (is_list(l)) { if (CAR(list_val(l)) == am_noconnect) { @@ -2246,6 +2248,7 @@ Eterm erl_send(Process *p, Eterm to, Eterm msg) ctx->return_term = msg; ctx->dss.reds = (Sint) (ERTS_BIF_REDS_LEFT(p) * TERM_TO_BINARY_LOOP_FACTOR); ctx->dss.phase = ERTS_DSIG_SEND_PHASE_INIT; + ctx->dss.from = p->common.id; result = do_send(p, to, msg, &ref, ctx); |