diff options
| author | Hazelnoot <acomputerdog@gmail.com> | 2025-05-05 17:44:00 -0400 |
|---|---|---|
| committer | Hazelnoot <acomputerdog@gmail.com> | 2025-05-07 12:40:01 -0400 |
| commit | c302a5c2d7696bc9dddeabe914b92ad2fdc0b0ba (patch) | |
| tree | abd55451e5defc2475123450ec5a2310048a1235 /packages/backend/src/core/PollService.ts | |
| parent | merge: Merge upstream 2025.4.1 (!955) (diff) | |
| download | sharkey-c302a5c2d7696bc9dddeabe914b92ad2fdc0b0ba.tar.gz sharkey-c302a5c2d7696bc9dddeabe914b92ad2fdc0b0ba.tar.bz2 sharkey-c302a5c2d7696bc9dddeabe914b92ad2fdc0b0ba.zip | |
reorder relay activities to avoid delivery race condition
Diffstat (limited to 'packages/backend/src/core/PollService.ts')
| -rw-r--r-- | packages/backend/src/core/PollService.ts | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/packages/backend/src/core/PollService.ts b/packages/backend/src/core/PollService.ts index d6364613bd..33262a4804 100644 --- a/packages/backend/src/core/PollService.ts +++ b/packages/backend/src/core/PollService.ts @@ -90,10 +90,7 @@ export class PollService { } @bindThis - public async deliverQuestionUpdate(noteId: MiNote['id']) { - const note = await this.notesRepository.findOneBy({ id: noteId }); - if (note == null) throw new Error('note not found'); - + public async deliverQuestionUpdate(note: MiNote) { if (note.localOnly) return; const user = await this.usersRepository.findOneBy({ id: note.userId }); @@ -101,8 +98,8 @@ export class PollService { if (this.userEntityService.isLocalUser(user)) { const content = this.apRendererService.addContext(this.apRendererService.renderUpdate(await this.apRendererService.renderNote(note, user, false), user)); - this.apDeliverManagerService.deliverToFollowers(user, content); - this.relayService.deliverToRelays(user, content); + await this.apDeliverManagerService.deliverToFollowers(user, content); + await this.relayService.deliverToRelays(user, content); } } } |