summary refs log tree commit diff
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2020-01-29 09:56:41 +0000
committerGitHub <noreply@github.com>2020-01-29 09:56:41 +0000
commit2cad8baa7030a86efc103599d79412741654dc15 (patch)
treee13d4359a193c23c4a44d7ebab365d1bc6306178
parentFix outbound federation request metrics (#6795) (diff)
downloadsynapse-2cad8baa7030a86efc103599d79412741654dc15.tar.xz
Fix bug when querying remote user keys that require a resync. (#6796)
We ended up only returning a single device, rather than all of them.
-rw-r--r--changelog.d/6796.bugfix1
-rw-r--r--synapse/handlers/e2e_keys.py3
2 files changed, 3 insertions, 1 deletions
diff --git a/changelog.d/6796.bugfix b/changelog.d/6796.bugfix
new file mode 100644

index 0000000000..206a157311 --- /dev/null +++ b/changelog.d/6796.bugfix
@@ -0,0 +1 @@ +Fix bug where querying a remote user's device keys that weren't cached resulted in only returning a single device. diff --git a/synapse/handlers/e2e_keys.py b/synapse/handlers/e2e_keys.py
index 2d889364d4..95a9d71f41 100644 --- a/synapse/handlers/e2e_keys.py +++ b/synapse/handlers/e2e_keys.py
@@ -208,8 +208,9 @@ class E2eKeysHandler(object): ) user_devices = user_devices["devices"] + user_results = results.setdefault(user_id, {}) for device in user_devices: - results[user_id] = {device["device_id"]: device["keys"]} + user_results[device["device_id"]] = device["keys"] user_ids_updated.append(user_id) except Exception as e: failures[destination] = _exception_to_failure(e)