From 19dbf19177698ddee5d825b60ed106779f4ceec7 Mon Sep 17 00:00:00 2001 From: Colin Adler Date: Fri, 6 Oct 2023 14:57:21 -0500 Subject: [PATCH] fix(coder): properly check for missing organization membership Fixes a possible panic introduced in https://github.com/coder/coder/pull/9781. --- coderd/users.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/coderd/users.go b/coderd/users.go index 9c0a4757e0..64b80c1677 100644 --- a/coderd/users.go +++ b/coderd/users.go @@ -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 }