From ee4d5eb50da8fcf06807ae53835b3d1c3e0215e0 Mon Sep 17 00:00:00 2001 From: Rickard Green Date: Tue, 21 Aug 2018 15:05:26 +0200 Subject: Cleanup unused dist output buf immediately instead of at GC --- erts/emulator/beam/dist.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'erts/emulator/beam/dist.c') diff --git a/erts/emulator/beam/dist.c b/erts/emulator/beam/dist.c index 6f54421805..abb08413d0 100644 --- a/erts/emulator/beam/dist.c +++ b/erts/emulator/beam/dist.c @@ -1938,6 +1938,8 @@ erts_dsig_send(ErtsDSigData *dsdp, struct erts_dsig_send_context* ctx) ctx->data_size = ctx->obuf->ext_endp - ctx->obuf->extp; if (ctx->data_size > (Uint) INT_MAX) { + free_dist_obuf(ctx->obuf); + ctx->obuf = NULL; retval = ERTS_DSIG_SEND_TOO_LRG; goto done; } -- cgit v1.2.3