From 4c1eab8ae8f5d786a9943d83ac91201657f3d2d1 Mon Sep 17 00:00:00 2001 From: eric Date: Wed, 31 Jul 2019 14:48:49 -0400 Subject: [PATCH] copy to list before iterating --- diagnostics.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/diagnostics.py b/diagnostics.py index e5acd62..4bc0f23 100755 --- a/diagnostics.py +++ b/diagnostics.py @@ -44,7 +44,10 @@ def deep_getsizeof(o, ids): return r if isinstance(o, Mapping): - return r + sum(d(k, ids) + d(v, ids) for k, v in o.items()) + try: + return r + sum(d(k, ids) + d(v, ids) for k, v in list(o.items())) + except RuntimeError: + return 'error' if isinstance(o, Container): return r + sum(d(x, ids) for x in o)