crypto: Don't send out empty to-device reuqests when sharing sessions

An empty to-device request can happen if we're trying to re-share a
session with devices that are we're missing an olm session with so don't
send them out.
master
Damir Jelić 2021-01-21 14:04:31 +01:00
parent ae0d810fb0
commit 1483c22171
1 changed files with 6 additions and 3 deletions

View File

@ -345,10 +345,13 @@ impl GroupSessionManager {
.encrypt_session_for(key_content.clone(), device_map_chunk)
.await?;
outbound.add_request(id, request.into());
if !request.messages.is_empty() {
outbound.add_request(id, request.into());
self.outbound_sessions_being_shared
.insert(id, outbound.clone());
}
changes.sessions.extend(used_sessions);
self.outbound_sessions_being_shared
.insert(id, outbound.clone());
}
let requests = outbound.pending_requests();