@@ -411,7 +411,11 @@ pub(crate) async fn post(
411411 // Now we can create the device on the homeserver, without holding the
412412 // transaction
413413 if let Err ( err) = homeserver
414- . create_device ( & user_id, device. as_str ( ) , session. human_name . as_deref ( ) )
414+ . upsert_device (
415+ & user. username ,
416+ device. as_str ( ) ,
417+ session. human_name . as_deref ( ) ,
418+ )
415419 . await
416420 {
417421 // Something went wrong, let's end this session and schedule a device sync
@@ -829,10 +833,9 @@ mod tests {
829833 . add ( & mut rng, & state. clock , & user, version, hash, None )
830834 . await
831835 . unwrap ( ) ;
832- let mxid = state. homeserver_connection . mxid ( & user. username ) ;
833836 state
834837 . homeserver_connection
835- . provision_user ( & ProvisionRequest :: new ( mxid , & user. sub ) )
838+ . provision_user ( & ProvisionRequest :: new ( & user . username , & user. sub ) )
836839 . await
837840 . unwrap ( ) ;
838841
@@ -1133,10 +1136,9 @@ mod tests {
11331136 . await
11341137 . unwrap ( ) ;
11351138
1136- let mxid = state. homeserver_connection . mxid ( & user. username ) ;
11371139 state
11381140 . homeserver_connection
1139- . provision_user ( & ProvisionRequest :: new ( mxid , & user. sub ) )
1141+ . provision_user ( & ProvisionRequest :: new ( & user . username , & user. sub ) )
11401142 . await
11411143 . unwrap ( ) ;
11421144
@@ -1239,10 +1241,9 @@ mod tests {
12391241 let user = repo. user ( ) . lock ( & state. clock , user) . await . unwrap ( ) ;
12401242 repo. save ( ) . await . unwrap ( ) ;
12411243
1242- let mxid = state. homeserver_connection . mxid ( & user. username ) ;
12431244 state
12441245 . homeserver_connection
1245- . provision_user ( & ProvisionRequest :: new ( mxid , & user. sub ) )
1246+ . provision_user ( & ProvisionRequest :: new ( & user . username , & user. sub ) )
12461247 . await
12471248 . unwrap ( ) ;
12481249
0 commit comments