Skip to content

Commit 7f7a750

Browse files
committed
fix: do not use user_link for deleted accounts
1 parent 20f5557 commit 7f7a750

File tree

4 files changed

+17
-3
lines changed

4 files changed

+17
-3
lines changed

coderd/database/dbmem/dbmem.go

+4
Original file line numberDiff line numberDiff line change
@@ -3767,6 +3767,10 @@ func (q *FakeQuerier) GetUserLinkByLinkedID(_ context.Context, id string) (datab
37673767
defer q.mutex.RUnlock()
37683768

37693769
for _, link := range q.userLinks {
3770+
user, err := q.getUserByIDNoLock(link.UserID)
3771+
if err == nil && user.Deleted {
3772+
continue
3773+
}
37703774
if link.LinkedID == id {
37713775
return link, nil
37723776
}

coderd/database/queries.sql.go

+5-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/database/queries/user_links.sql

+6-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
-- name: GetUserLinkByLinkedID :one
22
SELECT
3-
*
3+
user_links.*
44
FROM
55
user_links
6+
INNER JOIN
7+
users ON user_links.user_id = users.id
68
WHERE
7-
linked_id = $1;
9+
linked_id = $1
10+
AND
11+
deleted = false;
812

913
-- name: GetUserLinkByUserIDLoginType :one
1014
SELECT

coderd/userauth_test.go

+2
Original file line numberDiff line numberDiff line change
@@ -661,6 +661,8 @@ func TestUserOAuth2Github(t *testing.T) {
661661

662662
client, _ = fake.Login(t, client, jwt.MapClaims{})
663663
deleted, err := client.User(ctx, "me")
664+
require.NoError(t, err)
665+
664666
err = owner.DeleteUser(ctx, deleted.ID)
665667
require.NoError(t, err)
666668

0 commit comments

Comments
 (0)