File 1262-erts-Don-t-crash-on-maps-on-crash-dumps.patch of Package erlang
From 99655be9a918671b56846ff1731196c0d467f4cd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn-Egil=20Dahlberg?= <egil@erlang.org>
Date: Wed, 8 Jun 2016 18:58:21 +0200
Subject: [PATCH] erts: Don't crash on maps on crash dumps
- Large Maps could cause a stack overrun during crash dump generation.
- This is a simple workaround until a solution has been implemented.
- The error has no impact on a running system.
---
erts/emulator/beam/erl_process_dump.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/erts/emulator/beam/erl_process_dump.c b/erts/emulator/beam/erl_process_dump.c
index eeaa9a5..a70dfb8 100644
--- a/erts/emulator/beam/erl_process_dump.c
+++ b/erts/emulator/beam/erl_process_dump.c
@@ -560,6 +560,11 @@ dump_externally(int to, void *to_arg, Eterm term)
}
}
+ /* Do not handle maps */
+ if (is_map(term)) {
+ term = am_undefined;
+ }
+
s = p = sbuf;
erts_encode_ext(term, &p);
erts_print(to, to_arg, "E%X:", p-s);
--
2.1.4