From 52a5485f7a6ef9d5d3d5be02ef591da21cbc2a3d Mon Sep 17 00:00:00 2001 From: Nicolas Werner Date: Fri, 24 Nov 2023 17:42:06 +0100 Subject: [PATCH] fix: don't delete the dehydrated device before we are sure the keys got saved --- .../msc_3814_dehydrated_devices.dart | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/msc_extensions/msc_3814_dehydrated_devices/msc_3814_dehydrated_devices.dart b/lib/msc_extensions/msc_3814_dehydrated_devices/msc_3814_dehydrated_devices.dart index e2d2abdf..67e5d81f 100644 --- a/lib/msc_extensions/msc_3814_dehydrated_devices/msc_3814_dehydrated_devices.dart +++ b/lib/msc_extensions/msc_3814_dehydrated_devices/msc_3814_dehydrated_devices.dart @@ -114,6 +114,12 @@ extension DehydratedDeviceHandler on Client { } } while (events.events?.isNotEmpty == true); + // make sure the sessions we just received get uploaded before we upload a new device (which deletes the old device). + await this + .encryption + ?.keyManager + .uploadInboundGroupSessions(skipIfInProgress: false); + await _uploadNewDevice(secureStorage); } finally { await encryption.dispose();