From 29921882be8873f763f6135badc864442de74304 Mon Sep 17 00:00:00 2001 From: Sverker Eriksson Date: Tue, 14 Aug 2012 12:28:22 +0200 Subject: Fix corrupted binaries in compressed ETS tables --- erts/emulator/beam/external.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'erts/emulator/beam/external.c') diff --git a/erts/emulator/beam/external.c b/erts/emulator/beam/external.c index 4348578694..52f45b924f 100644 --- a/erts/emulator/beam/external.c +++ b/erts/emulator/beam/external.c @@ -1889,7 +1889,9 @@ enc_term(ErtsAtomCacheMap *acmp, Eterm obj, byte* ep, Uint32 dflags, *ep++ = BINARY_INTERNAL_REF; } if (pb->flags) { + char* before_realloc = pb->val->orig_bytes; erts_emasculate_writable_binary(pb); + bytes += (pb->val->orig_bytes - before_realloc); } erts_refc_inc(&pb->val->refc, 2); -- cgit v1.2.3