fix(coder): properly check for missing organization membership

Fixes a possible panic introduced in https://github.com/coder/coder/pull/9781.
This commit is contained in:
Colin Adler 2023-10-06 14:57:21 -05:00 committed by GitHub
parent 71ad5909f2
commit 19dbf19177
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 3 deletions

View File

@ -1167,12 +1167,12 @@ func convertUsers(users []database.User, organizationIDsByUserID map[uuid.UUID][
func userOrganizationIDs(ctx context.Context, api *API, user database.User) ([]uuid.UUID, error) {
organizationIDsByMemberIDsRows, err := api.Database.GetOrganizationIDsByMemberIDs(ctx, []uuid.UUID{user.ID})
if errors.Is(err, sql.ErrNoRows) {
return []uuid.UUID{}, xerrors.Errorf("user %q must be a member of at least one organization", user.Email)
}
if err != nil {
return []uuid.UUID{}, err
}
if len(organizationIDsByMemberIDsRows) == 0 {
return []uuid.UUID{}, xerrors.Errorf("user %q must be a member of at least one organization", user.Email)
}
member := organizationIDsByMemberIDsRows[0]
return member.OrganizationIDs, nil
}