From e967d253c637f599b9f9237b605bc9c066032b41 Mon Sep 17 00:00:00 2001 From: Patrik Nyblom Date: Wed, 5 Jun 2013 18:23:02 +0200 Subject: Teach external.c to handle reallocs before compression --- erts/emulator/beam/external.c | 1 + 1 file changed, 1 insertion(+) (limited to 'erts/emulator') diff --git a/erts/emulator/beam/external.c b/erts/emulator/beam/external.c index 9e86442f32..8a1e89afb4 100644 --- a/erts/emulator/beam/external.c +++ b/erts/emulator/beam/external.c @@ -1667,6 +1667,7 @@ static Eterm erts_term_to_binary_int(Process* p, Eterm Term, int level, Uint fla /* To make absolutely sure that zlib does not barf on a reallocated context, we make sure it's "exported" before doing anything compession-like */ EXPORT_CONTEXT(); + bytes = (byte *) result_bin->orig_bytes; /* result_bin is reallocated */ if (erl_zlib_deflate_start(&(context->s.cc.stream),bytes+1,real_size-1,level) != Z_OK) { goto return_normal; -- cgit v1.2.3