@@ -470,7 +470,7 @@ func (r *Upgrader) generateInitialEvents(ctx context.Context, oldRoom *api.Query
470470func (r * Upgrader ) sendInitialEvents (ctx context.Context , evTime time.Time , senderID spec.SenderID , userDomain spec.ServerName , newRoomID string , newVersion gomatrixserverlib.RoomVersion , eventsToMake []gomatrixserverlib.FledglingEvent ) error {
471471 var err error
472472 var builtEvents []* types.HeaderedEvent
473- authEvents := gomatrixserverlib .NewAuthEvents (nil )
473+ authEvents , _ := gomatrixserverlib .NewAuthEvents (nil )
474474 for i , e := range eventsToMake {
475475 depth := i + 1 // depth starts at 1
476476
@@ -495,7 +495,7 @@ func (r *Upgrader) sendInitialEvents(ctx context.Context, evTime time.Time, send
495495 return err
496496 }
497497 builder := verImpl .NewEventBuilderFromProtoEvent (& proto )
498- if err = builder .AddAuthEvents (& authEvents ); err != nil {
498+ if err = builder .AddAuthEvents (authEvents ); err != nil {
499499 return err
500500 }
501501
@@ -506,7 +506,7 @@ func (r *Upgrader) sendInitialEvents(ctx context.Context, evTime time.Time, send
506506
507507 }
508508
509- if err = gomatrixserverlib .Allowed (event , & authEvents , func (roomID spec.RoomID , senderID spec.SenderID ) (* spec.UserID , error ) {
509+ if err = gomatrixserverlib .Allowed (event , authEvents , func (roomID spec.RoomID , senderID spec.SenderID ) (* spec.UserID , error ) {
510510 return r .URSAPI .QueryUserIDForSender (ctx , roomID , senderID )
511511 }); err != nil {
512512 return fmt .Errorf ("Failed to auth new %q event: %w" , builder .Type , err )
@@ -586,8 +586,11 @@ func (r *Upgrader) makeHeaderedEvent(ctx context.Context, evTime time.Time, send
586586 for i := range queryRes .StateEvents {
587587 stateEvents [i ] = queryRes .StateEvents [i ].PDU
588588 }
589- provider := gomatrixserverlib .NewAuthEvents (stateEvents )
590- if err = gomatrixserverlib .Allowed (headeredEvent .PDU , & provider , func (roomID spec.RoomID , senderID spec.SenderID ) (* spec.UserID , error ) {
589+ provider , err := gomatrixserverlib .NewAuthEvents (stateEvents )
590+ if err != nil {
591+ return nil , err
592+ }
593+ if err = gomatrixserverlib .Allowed (headeredEvent .PDU , provider , func (roomID spec.RoomID , senderID spec.SenderID ) (* spec.UserID , error ) {
591594 return r .URSAPI .QueryUserIDForSender (ctx , roomID , senderID )
592595 }); err != nil {
593596 return nil , api.ErrNotAllowed {Err : fmt .Errorf ("failed to auth new %q event: %w" , proto .Type , err )} // TODO: Is this error string comprehensible to the client?
0 commit comments