0
0
Fork 0

Handle stream_entry URL correctly in ActivityPub (#4854)

In before, the method uses stream_entry id as status id, so replied status was wrongly selected.

This PR uses StatusFinder which was introduced with `Api::Web::EmbedsController`.
This commit is contained in:
unarist 2017-09-09 01:20:03 +09:00 committed by Eugen Rochko
parent dabc309ca3
commit a12572e074
2 changed files with 30 additions and 2 deletions

View file

@ -96,12 +96,14 @@ class ActivityPub::TagManager
when 'Account'
klass.find_local(uri_to_local_id(uri, :username))
else
klass.find_by(id: uri_to_local_id(uri))
StatusFinder.new(uri).status
end
elsif ::TagManager.instance.local_id?(uri)
klass.find_by(id: ::TagManager.instance.unique_tag_to_local_id(uri, klass.to_s))
else
klass.find_by(uri: uri.split('#').first)
end
rescue ActiveRecord::RecordNotFound
nil
end
end