diff --git a/roomserver/internal/perform_invite.go b/roomserver/internal/perform_invite.go index f58e51713..1cfbcc18c 100644 --- a/roomserver/internal/perform_invite.go +++ b/roomserver/internal/perform_invite.go @@ -208,13 +208,9 @@ func buildInviteStrippedState( StateKey: "", }) } - _, currentStateSnapshotNID, _, err := db.LatestEventIDs(ctx, info.RoomNID) - if err != nil { - return nil, err - } roomState := state.NewStateResolution(db) stateEntries, err := roomState.LoadStateAtSnapshotForStringTuples( - ctx, currentStateSnapshotNID, stateWanted, + ctx, info.StateSnapshotNID, stateWanted, ) if err != nil { return nil, err diff --git a/roomserver/internal/query.go b/roomserver/internal/query.go index 2e8e87007..897164330 100644 --- a/roomserver/internal/query.go +++ b/roomserver/internal/query.go @@ -559,6 +559,9 @@ func (r *RoomserverInternalAPI) isServerCurrentlyInRoom(ctx context.Context, ser if err != nil { return false, err } + if info == nil { + return false, fmt.Errorf("unknown room %s", roomID) + } eventNIDs, err := r.DB.GetMembershipEventNIDsForRoom(ctx, info.RoomNID, true, false) if err != nil {