diff options
author | Sverker Eriksson <[email protected]> | 2014-09-04 19:41:45 +0200 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2014-09-04 19:41:45 +0200 |
commit | 6725999a923dfa50aff9fdb21d9a245f0f1d8341 (patch) | |
tree | c9d59d826860a564dd9fd60d3ba60a6d610706b5 /erts/emulator | |
parent | 6a986c1f076ef75b124ac75286479aaaa94fd226 (diff) | |
parent | 35ff91189c8dd4ceed3d8f29536f500787ba4782 (diff) | |
download | otp-6725999a923dfa50aff9fdb21d9a245f0f1d8341.tar.gz otp-6725999a923dfa50aff9fdb21d9a245f0f1d8341.tar.bz2 otp-6725999a923dfa50aff9fdb21d9a245f0f1d8341.zip |
Merge branch 'maint'
Diffstat (limited to 'erts/emulator')
-rw-r--r-- | erts/emulator/beam/external.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/erts/emulator/beam/external.c b/erts/emulator/beam/external.c index 8d240355b0..9b9b4b2a62 100644 --- a/erts/emulator/beam/external.c +++ b/erts/emulator/beam/external.c @@ -1925,6 +1925,7 @@ static Eterm erts_term_to_binary_int(Process* p, Eterm Term, int level, Uint fla } real_size = endp - bytes; result_bin = erts_bin_realloc(context->s.ec.result_bin,real_size); + result_bin->orig_size = real_size; level = context->s.ec.level; BUMP_REDS(p, (initial_reds - reds) / TERM_TO_BINARY_LOOP_FACTOR); if (level == 0 || real_size < 6) { /* We are done */ @@ -2004,6 +2005,7 @@ static Eterm erts_term_to_binary_int(Process* p, Eterm Term, int level, Uint fla erl_zlib_deflate_finish(&(context->s.cc.stream)); result_bin = erts_bin_realloc(context->s.cc.destination_bin, context->s.cc.dest_len+6); + result_bin->orig_size = context->s.cc.dest_len+6; context->s.cc.destination_bin = NULL; pb = (ProcBin *) HAlloc(p, PROC_BIN_SIZE); pb->thing_word = HEADER_PROC_BIN; |