From a8ea244fb3ee6e8f6eddf99b4847f68ebf2a8ff4 Mon Sep 17 00:00:00 2001
From: Rafal Bielski <rafal.bielski@cern.ch>
Date: Fri, 13 Nov 2020 14:14:59 +0100
Subject: [PATCH] TrigValTools: improve dictionary handling in chainComp.py

---
 .../TrigValidation/TrigValTools/bin/chainComp.py   | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/Trigger/TrigValidation/TrigValTools/bin/chainComp.py b/Trigger/TrigValidation/TrigValTools/bin/chainComp.py
index 8db48946665..860ebf0036d 100755
--- a/Trigger/TrigValidation/TrigValTools/bin/chainComp.py
+++ b/Trigger/TrigValidation/TrigValTools/bin/chainComp.py
@@ -109,15 +109,13 @@ def print_event_diff(inp_data, ref_data, key):
 
 
 def print_step_diff(inp_data, ref_data, key):
-    if key not in inp_data:
-        inp_data[key] = dict()
-    if key not in ref_data:
-        ref_data[key] = dict()
-    if inp_data[key] != ref_data[key]:
+    inp_steps = inp_data.get(key, dict())
+    ref_steps = ref_data.get(key, dict())
+    if inp_steps != ref_steps:
         logging.info('    %s:', key)
-        for step in range(max(len(inp_data[key]), len(ref_data[key]))):
-            inp_count = inp_data[key][step] if step in inp_data[key] else 0
-            ref_count = ref_data[key][step] if step in ref_data[key] else 0
+        for step in range(max(len(inp_steps), len(ref_steps))):
+            inp_count = inp_steps.get(step, 0)
+            ref_count = ref_steps.get(step, 0)
             if inp_count != ref_count:
                 logging.info('      %d: %d -> %d', step, ref_count, inp_count)
 
-- 
GitLab