summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Ryabitsev <konstantin@linuxfoundation.org>2020-05-13 17:04:55 -0400
committerKonstantin Ryabitsev <konstantin@linuxfoundation.org>2020-05-13 17:08:55 -0400
commitf8b5ba9a6dafc56822c3ac31053d3e94795108eb (patch)
tree35a9adf8342c82457693d028ff4fc50190f20244
parent9d66b52ec7a13e482edcf7dcf2d4ceb9806b491e (diff)
downloadb4-f8b5ba9a6dafc56822c3ac31053d3e94795108eb.tar.gz
Fix crasher for incomplete threads
Don't crash if the message in the References: is not available in the thread. Reported-by: Bjorn Helgaas <helgaas@kernel.org> Signed-off-by: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
-rw-r--r--b4/__init__.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/b4/__init__.py b/b4/__init__.py
index 3ed8244..ad417e6 100644
--- a/b4/__init__.py
+++ b/b4/__init__.py
@@ -275,8 +275,11 @@ class LoreMailbox:
if pmsg is None:
# Can't find the message we're replying to here
continue
- else:
+ elif fmsg.in_reply_to in self.msgid_map:
pmsg = self.msgid_map[fmsg.in_reply_to]
+ else:
+ logger.debug(' missing message, skipping: %s', fmsg.in_reply_to)
+ continue
trailers, mismatches = fmsg.get_trailers(sloppy=sloppytrailers)
for tname, tvalue in mismatches: