diff options
| author | tamaina <tamaina@hotmail.co.jp> | 2024-02-25 12:36:10 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-02-25 12:36:10 +0900 |
| commit | 2c6f25b710b4f8095458fe88ddd56e6c6a41d006 (patch) | |
| tree | bcca3028e8ad2f970aaf0edcbbbae067074e59c2 /packages/backend/src/core/UserFollowingService.ts | |
| parent | fix(frontend): `userActivation`がない環境において不具合が生じ... (diff) | |
| download | sharkey-2c6f25b710b4f8095458fe88ddd56e6c6a41d006.tar.gz sharkey-2c6f25b710b4f8095458fe88ddd56e6c6a41d006.tar.bz2 sharkey-2c6f25b710b4f8095458fe88ddd56e6c6a41d006.zip | |
fix: 古いキャッシュを使うのを修正 (#13453)
Diffstat (limited to 'packages/backend/src/core/UserFollowingService.ts')
| -rw-r--r-- | packages/backend/src/core/UserFollowingService.ts | 27 |
1 files changed, 9 insertions, 18 deletions
diff --git a/packages/backend/src/core/UserFollowingService.ts b/packages/backend/src/core/UserFollowingService.ts index d87cbacdcb..0a492c06e4 100644 --- a/packages/backend/src/core/UserFollowingService.ts +++ b/packages/backend/src/core/UserFollowingService.ts @@ -101,33 +101,24 @@ export class UserFollowingService implements OnModuleInit { this.queueService.deliver(followee, content, follower.inbox, false); } - /** - * ThinUserでなくともユーザーの情報が最新でない場合はこちらを使うべき - */ @bindThis - public async followByThinUser( + public async follow( _follower: ThinUser, _followee: ThinUser, - options: Parameters<typeof this.follow>[2] = {}, - ) { - const [follower, followee] = await Promise.all([ - this.usersRepository.findOneByOrFail({ id: _follower.id }), - this.usersRepository.findOneByOrFail({ id: _followee.id }), - ]) as [MiLocalUser | MiRemoteUser, MiLocalUser | MiRemoteUser]; - - await this.follow(follower, followee, options); - } - - @bindThis - public async follow( - follower: MiLocalUser | MiRemoteUser, - followee: MiLocalUser | MiRemoteUser, { requestId, silent = false, withReplies }: { requestId?: string, silent?: boolean, withReplies?: boolean, } = {}, ): Promise<void> { + /** + * 必ず最新のユーザー情報を取得する + */ + const [follower, followee] = await Promise.all([ + this.usersRepository.findOneByOrFail({ id: _follower.id }), + this.usersRepository.findOneByOrFail({ id: _followee.id }), + ]) as [MiLocalUser | MiRemoteUser, MiLocalUser | MiRemoteUser]; + if (this.userEntityService.isRemoteUser(follower) && this.userEntityService.isRemoteUser(followee)) { // What? throw new Error('Remote user cannot follow remote user.'); |