Browse Source

Do not misattribute inlined boosts if `attributedTo` isn't present (#10967)

* Do not misattribute inlined boosts if `attributedTo` isn't present

Fixes #10950

* Fix tests
pull/4/head
ThibG 4 years ago
committed by Eugen Rochko
parent
commit
6c464cd424
2 changed files with 4 additions and 16 deletions
  1. +1
    -1
      app/lib/activitypub/activity.rb
  2. +3
    -15
      spec/lib/activitypub/activity/announce_spec.rb

+ 1
- 1
app/lib/activitypub/activity.rb View File

@ -143,7 +143,7 @@ class ActivityPub::Activity
# If the boosted toot is embedded and it is a self-boost, handle it like a Create
unless unsupported_object_type?
actor_id = value_or_id(first_of_value(@object['attributedTo'])) || @account.uri
actor_id = value_or_id(first_of_value(@object['attributedTo']))
if actor_id == @account.uri
return ActivityPub::Activity.factory({ 'type' => 'Create', 'actor' => actor_id, 'object' => @object }, @account).perform

+ 3
- 15
spec/lib/activitypub/activity/announce_spec.rb View File

@ -58,21 +58,6 @@ RSpec.describe ActivityPub::Activity::Announce do
end
end
context 'self-boost of a previously unknown status with missing attributedTo' do
let(:object_json) do
{
id: 'https://example.com/actor#bar',
type: 'Note',
content: 'Lorem ipsum',
to: 'http://example.com/followers',
}
end
it 'creates a reblog by sender of status' do
expect(sender.reblogged?(sender.statuses.first)).to be true
end
end
context 'self-boost of a previously unknown status with correct attributedTo' do
let(:object_json) do
{
@ -122,6 +107,7 @@ RSpec.describe ActivityPub::Activity::Announce do
type: 'Note',
content: 'Lorem ipsum',
to: 'http://example.com/followers',
attributedTo: 'https://example.com/actor',
}
end
@ -141,6 +127,7 @@ RSpec.describe ActivityPub::Activity::Announce do
type: 'Note',
content: 'Lorem ipsum',
to: 'http://example.com/followers',
attributedTo: 'https://example.com/actor',
}
end
@ -161,6 +148,7 @@ RSpec.describe ActivityPub::Activity::Announce do
type: 'Note',
content: 'Lorem ipsum',
to: 'http://example.com/followers',
attributedTo: 'https://example.com/actor',
}
end

Loading…
Cancel
Save