From 3a1756bdf3a98d8213cb82394a228f966cbdb515 Mon Sep 17 00:00:00 2001
From: Petr Svenda <petr@svenda.com>
Date: Sun, 1 Sep 2024 10:37:21 +0200
Subject: [PATCH] fix conditional update of broadcast time when no premix is
 supplied

---
 Scripts/cj_analysis.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/Scripts/cj_analysis.py b/Scripts/cj_analysis.py
index a17a3d3..83f8ca1 100644
--- a/Scripts/cj_analysis.py
+++ b/Scripts/cj_analysis.py
@@ -474,7 +474,8 @@ def analyze_input_out_liquidity(coinjoins, postmix_spend, premix_spend, mix_prot
     total_mix_staying = []
     total_utxos = 0
     broadcast_times = {cjtx: precomp_datetime.strptime(coinjoins[cjtx]['broadcast_time'], "%Y-%m-%d %H:%M:%S.%f") for cjtx in coinjoins.keys()}
-    broadcast_times.update({tx: precomp_datetime.strptime(postmix_spend[tx]['broadcast_time'], "%Y-%m-%d %H:%M:%S.%f") for tx in postmix_spend.keys()})
+    if postmix_spend:
+        broadcast_times.update({tx: precomp_datetime.strptime(postmix_spend[tx]['broadcast_time'], "%Y-%m-%d %H:%M:%S.%f") for tx in postmix_spend.keys()})
     # Sort coinjoins based on mining time
     cj_time = [{'txid': cjtxid, 'broadcast_time': precomp_datetime.strptime(coinjoins[cjtxid]['broadcast_time'], "%Y-%m-%d %H:%M:%S.%f")} for cjtxid in coinjoins.keys()]
     sorted_cj_times = sorted(cj_time, key=lambda x: x['broadcast_time'])
-- 
GitLab