diff options
author | Rickard Green <[email protected]> | 2019-03-28 19:59:58 +0100 |
---|---|---|
committer | Rickard Green <[email protected]> | 2019-04-05 14:50:27 +0200 |
commit | f2671c2ef47f8c49cd5fab6e1737ed08d99ea5d2 (patch) | |
tree | aa69869ff75dadbcdf8c3432ec370c7af409d844 /erts/emulator/beam/erl_process.c | |
parent | 060d9110ffb305d6ce5f974788948463e481203b (diff) | |
download | otp-f2671c2ef47f8c49cd5fab6e1737ed08d99ea5d2.tar.gz otp-f2671c2ef47f8c49cd5fab6e1737ed08d99ea5d2.tar.bz2 otp-f2671c2ef47f8c49cd5fab6e1737ed08d99ea5d2.zip |
Fail when we cannot encode term in binary
Fail when we cannot encode term in binary instead of producing a
faulty result.
Diffstat (limited to 'erts/emulator/beam/erl_process.c')
-rw-r--r-- | erts/emulator/beam/erl_process.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c index 9e662632b4..4780b7fb21 100644 --- a/erts/emulator/beam/erl_process.c +++ b/erts/emulator/beam/erl_process.c @@ -12149,6 +12149,7 @@ erts_proc_exit_handle_dist_monitor(ErtsMonitor *mon, void *vctxt, Sint reds) case ERTS_DSIG_SEND_OK: break; case ERTS_DSIG_SEND_TOO_LRG: + erts_kill_dist_connection(dep, dist->connection_id); erts_set_gc_state(c_p, 1); break; default: @@ -12397,6 +12398,7 @@ erts_proc_exit_handle_dist_link(ErtsLink *lnk, void *vctxt, Sint reds) case ERTS_DSIG_SEND_OK: break; case ERTS_DSIG_SEND_TOO_LRG: + erts_kill_dist_connection(dep, dist->connection_id); erts_set_gc_state(c_p, 1); break; default: @@ -12893,7 +12895,9 @@ restart: switch (result) { case ERTS_DSIG_SEND_OK: + break; case ERTS_DSIG_SEND_TOO_LRG: /*SEND_SYSTEM_LIMIT*/ + erts_kill_dist_connection(ctx->dep, ctx->connection_id); break; case ERTS_DSIG_SEND_YIELD: /*SEND_YIELD_RETURN*/ case ERTS_DSIG_SEND_CONTINUE: { /*SEND_YIELD_CONTINUE*/ |