Fix status updates not being forwarded like deletes through ActivityPub (#17648)

Fix #17521
This commit is contained in:
Eugen Rochko 2022-02-26 17:51:59 +01:00 committed by GitHub
parent 48caeb9d65
commit 0dc57ab6ed
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 76 additions and 40 deletions

View file

@ -22,10 +22,15 @@ class ActivityPub::Activity::Update < ActivityPub::Activity
def update_status
return reject_payload! if invalid_origin?(@object['id'])
status = Status.find_by(uri: object_uri, account_id: @account.id)
@status = Status.find_by(uri: object_uri, account_id: @account.id)
return if status.nil?
return if @status.nil?
ActivityPub::ProcessStatusUpdateService.new.call(status, @object)
forwarder.forward! if forwarder.forwardable?
ActivityPub::ProcessStatusUpdateService.new.call(@status, @object)
end
def forwarder
@forwarder ||= ActivityPub::Forwarder.new(@account, @json, @status)
end
end