summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changes/user_id_wont_break_mx2
-rw-r--r--src/leap/mx/couchdbhelper.py6
2 files changed, 7 insertions, 1 deletions
diff --git a/changes/user_id_wont_break_mx b/changes/user_id_wont_break_mx
new file mode 100644
index 0000000..0631118
--- /dev/null
+++ b/changes/user_id_wont_break_mx
@@ -0,0 +1,2 @@
+ o Any inconsistent user would make the mx stop decrypting mails for all
+ subsequent users
diff --git a/src/leap/mx/couchdbhelper.py b/src/leap/mx/couchdbhelper.py
index 41604ba..f20f1dd 100644
--- a/src/leap/mx/couchdbhelper.py
+++ b/src/leap/mx/couchdbhelper.py
@@ -171,7 +171,11 @@ class ConnectedCouchDB(client.CouchDB):
:rtype: str or None
"""
for row in result["rows"]:
- if row["doc"]["user_id"] == uuid:
+ user_id = row["doc"].get("user_id")
+ if not user_id:
+ print("User %s is in an inconsistent state")
+ continue
+ if user_id == uuid:
return row["value"]
return None