mirror of
https://github.com/mastodon/mastodon.git
synced 2024-12-22 12:55:56 +01:00
Fix threading of private posts received out of order
This commit is contained in:
parent
693d9b03ed
commit
ebabda5695
1 changed files with 10 additions and 3 deletions
|
@ -10,10 +10,17 @@ class ThreadResolveWorker
|
|||
child_status = Status.find(child_status_id)
|
||||
return if child_status.in_reply_to_id.present?
|
||||
|
||||
parent_status = ActivityPub::TagManager.instance.uri_to_resource(parent_url, Status)
|
||||
parent_status ||= FetchRemoteStatusService.new.call(parent_url, **options.deep_symbolize_keys)
|
||||
skip_fetching = options.delete('skip_fetching')
|
||||
|
||||
return if parent_status.nil?
|
||||
parent_status = ActivityPub::TagManager.instance.uri_to_resource(parent_url, Status)
|
||||
parent_status ||= FetchRemoteStatusService.new.call(parent_url, **options.deep_symbolize_keys) unless skip_fetching
|
||||
|
||||
if parent_status.nil?
|
||||
raise 'presumably private parent not found, retrying later' if skip_fetching
|
||||
|
||||
ThreadResolveWorker.perform_async(child_status_id, parent_url, { 'skip_fetching' => true })
|
||||
return
|
||||
end
|
||||
|
||||
child_status.thread = parent_status
|
||||
child_status.save!
|
||||
|
|
Loading…
Reference in a new issue