From c80de7659717c3cb3d0ec4fa49e19124f4f957f8 Mon Sep 17 00:00:00 2001 From: Andrey Tsirulev Date: Sat, 16 Feb 2013 15:57:42 +0400 Subject: Fix observer table viewer crash on formatting improper lists Observer table viewer crashes when attempts to display a term containing improper lists (e.g. dict). Quick way to reproduce: run ets:insert(ets:new(test,[]), {1,[h|t]}). then start observer and open test ETS in table viewer. Observer will crash. --- lib/observer/src/observer_tv_table.erl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'lib/observer') diff --git a/lib/observer/src/observer_tv_table.erl b/lib/observer/src/observer_tv_table.erl index 5d1ab2e946..83619414ad 100644 --- a/lib/observer/src/observer_tv_table.erl +++ b/lib/observer/src/observer_tv_table.erl @@ -784,8 +784,10 @@ format_list(List) -> make_list([Last]) -> [format(Last), $]]; +make_list([Head|Tail]) when is_list(Tail) -> + [format(Head), $,|make_list(Tail)]; make_list([Head|Tail]) -> - [format(Head), $,|make_list(Tail)]. + [format(Head), $|, format(Tail), $]]. map_printable_list([$\n|Cs]) -> [$\\, $n|map_printable_list(Cs)]; -- cgit v1.2.3