@@ -1455,22 +1455,19 @@ impl Store {
14551455 from_backup_version : Option < & str > ,
14561456 progress_listener : impl Fn ( usize , usize ) ,
14571457 ) -> Result < RoomKeyImportResult > {
1458- let exported_keys: Vec < _ > = exported_keys
1459- . iter ( )
1460- . filter_map ( |key| {
1461- key. try_into ( )
1462- . map_err ( |e| {
1463- warn ! (
1464- sender_key = key. sender_key( ) . to_base64( ) ,
1465- room_id = ?key. room_id( ) ,
1466- session_id = key. session_id( ) ,
1467- error = ?e,
1468- "Couldn't import a room key from a file export."
1469- ) ;
1470- } )
1471- . ok ( )
1472- } )
1473- . collect ( ) ;
1458+ let exported_keys = exported_keys. iter ( ) . filter_map ( |key| {
1459+ key. try_into ( )
1460+ . map_err ( |e| {
1461+ warn ! (
1462+ sender_key = key. sender_key( ) . to_base64( ) ,
1463+ room_id = ?key. room_id( ) ,
1464+ session_id = key. session_id( ) ,
1465+ error = ?e,
1466+ "Couldn't import a room key from a file export."
1467+ ) ;
1468+ } )
1469+ . ok ( )
1470+ } ) ;
14741471 self . import_sessions_impl ( exported_keys, from_backup_version, progress_listener) . await
14751472 }
14761473
@@ -1510,10 +1507,11 @@ impl Store {
15101507
15111508 async fn import_sessions_impl (
15121509 & self ,
1513- sessions : Vec < InboundGroupSession > ,
1510+ sessions : impl Iterator < Item = InboundGroupSession > ,
15141511 from_backup_version : Option < & str > ,
15151512 progress_listener : impl Fn ( usize , usize ) ,
15161513 ) -> Result < RoomKeyImportResult > {
1514+ let sessions: Vec < _ > = sessions. collect ( ) ;
15171515 let mut imported_sessions = Vec :: new ( ) ;
15181516
15191517 let total_count = sessions. len ( ) ;
@@ -1774,22 +1772,19 @@ impl Store {
17741772 ) ;
17751773 }
17761774
1777- let keys = good
1778- . iter ( )
1779- . filter_map ( |key| {
1780- key. try_into_inbound_group_session ( forwarder_data)
1781- . map_err ( |e| {
1782- warn ! (
1783- sender_key = ?key. sender_key( ) . to_base64( ) ,
1784- room_id = ?key. room_id( ) ,
1785- session_id = key. session_id( ) ,
1786- error = ?e,
1787- "Couldn't import a room key from a key bundle."
1788- ) ;
1789- } )
1790- . ok ( )
1791- } )
1792- . collect ( ) ;
1775+ let keys = good. iter ( ) . filter_map ( |key| {
1776+ key. try_into_inbound_group_session ( forwarder_data)
1777+ . map_err ( |e| {
1778+ warn ! (
1779+ sender_key = ?key. sender_key( ) . to_base64( ) ,
1780+ room_id = ?key. room_id( ) ,
1781+ session_id = key. session_id( ) ,
1782+ error = ?e,
1783+ "Couldn't import a room key from a key bundle."
1784+ ) ;
1785+ } )
1786+ . ok ( )
1787+ } ) ;
17931788
17941789 self . import_sessions_impl ( keys, None , progress_listener) . await ?;
17951790 }
0 commit comments