summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--synapse/storage/end_to_end_keys.py8
1 files changed, 3 insertions, 5 deletions
diff --git a/synapse/storage/end_to_end_keys.py b/synapse/storage/end_to_end_keys.py
index 29281630c0..2a0f6cfca9 100644
--- a/synapse/storage/end_to_end_keys.py
+++ b/synapse/storage/end_to_end_keys.py
@@ -40,12 +40,10 @@ class EndToEndKeyStore(SQLBaseStore):
                 allow_none=True,
             )
 
-            if old_key_json and not isinstance(old_key_json, bytes):
-                # In py3 we need old_key_json to match new_key_json type. The DB
-                # returns unicode while encode_canonical_json returns bytes
-                old_key_json = old_key_json.encode("utf-8")
+            # In py3 we need old_key_json to match new_key_json type. The DB
+            # returns unicode while encode_canonical_json returns bytes.
+            new_key_json = encode_canonical_json(device_keys).decode("utf-8")
 
-            new_key_json = encode_canonical_json(device_keys)
             if old_key_json == new_key_json:
                 return False