diff options
author | Sverker Eriksson <[email protected]> | 2015-03-30 19:54:23 +0200 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2015-03-30 19:54:23 +0200 |
commit | e4da94bee94bdd7e0dbb2e5021ab4cc5f89f8256 (patch) | |
tree | 97641dc7464203d0cd7359b6ec467f669dc6b481 /erts/emulator/beam/dist.c | |
parent | be89d435fbde795bcdc62b99529c5f77d42c6b62 (diff) | |
download | otp-e4da94bee94bdd7e0dbb2e5021ab4cc5f89f8256.tar.gz otp-e4da94bee94bdd7e0dbb2e5021ab4cc5f89f8256.tar.bz2 otp-e4da94bee94bdd7e0dbb2e5021ab4cc5f89f8256.zip |
erts: Refactor encode_size_struct_int
to handle the "start of list" case in one place and not seven.
Note that this commit reverts (47d6fd3ccf35) back to using WSTACK
and pushing raw pointers. We disable GC while yielding, so this should not
be a problem.
Diffstat (limited to 'erts/emulator/beam/dist.c')
-rw-r--r-- | erts/emulator/beam/dist.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/erts/emulator/beam/dist.c b/erts/emulator/beam/dist.c index bfecac1612..32f3cda4f5 100644 --- a/erts/emulator/beam/dist.c +++ b/erts/emulator/beam/dist.c @@ -712,7 +712,7 @@ void erts_dsend_context_dtor(Binary* ctx_bin) ErtsSendContext* ctx = ERTS_MAGIC_BIN_DATA(ctx_bin); switch (ctx->dss.phase) { case ERTS_DSIG_SEND_PHASE_MSG_SIZE: - DESTROY_SAVED_ESTACK(&ctx->dss.u.sc.estack); + DESTROY_SAVED_WSTACK(&ctx->dss.u.sc.wstack); break; case ERTS_DSIG_SEND_PHASE_MSG_ENCODE: DESTROY_SAVED_WSTACK(&ctx->dss.u.ec.wstack); @@ -1800,7 +1800,7 @@ erts_dsig_send(ErtsDSigData *dsdp, struct erts_dsig_send_context* ctx) erts_encode_dist_ext_size(ctx->ctl, ctx->flags, ctx->acmp, &ctx->data_size); if (is_value(ctx->msg)) { - ctx->u.sc.estack.start = NULL; + ctx->u.sc.wstack.wstart = NULL; ctx->u.sc.flags = ctx->flags; ctx->u.sc.level = 0; ctx->phase = ERTS_DSIG_SEND_PHASE_MSG_SIZE; |