Fix account URI when updating ActivityPub account (#7488)
Updates account `uri` field on each call to `update_account` instead of
only once during `create_account` to mirror the same behavior in OStatus
`ResolveAccountService` class [0].
ActivityPub accounts are identified using `@username` and `@domain` pair
instead of URI since #6842.
This fixes #7479: a bug when the account identified by `@username` and
`@domain` changes its URI.
[0]:
03b69ebc45/app/services/resolve_account_service.rb (L121)
main
parent
03b69ebc45
commit
7fe2993b87
|
@ -44,7 +44,6 @@ class ActivityPub::ProcessAccountService < BaseService
|
||||||
@account.protocol = :activitypub
|
@account.protocol = :activitypub
|
||||||
@account.username = @username
|
@account.username = @username
|
||||||
@account.domain = @domain
|
@account.domain = @domain
|
||||||
@account.uri = @uri
|
|
||||||
@account.suspended = true if auto_suspend?
|
@account.suspended = true if auto_suspend?
|
||||||
@account.silenced = true if auto_silence?
|
@account.silenced = true if auto_silence?
|
||||||
@account.private_key = nil
|
@account.private_key = nil
|
||||||
|
@ -67,6 +66,7 @@ class ActivityPub::ProcessAccountService < BaseService
|
||||||
@account.followers_url = @json['followers'] || ''
|
@account.followers_url = @json['followers'] || ''
|
||||||
@account.featured_collection_url = @json['featured'] || ''
|
@account.featured_collection_url = @json['featured'] || ''
|
||||||
@account.url = url || @uri
|
@account.url = url || @uri
|
||||||
|
@account.uri = @uri
|
||||||
@account.display_name = @json['name'] || ''
|
@account.display_name = @json['name'] || ''
|
||||||
@account.note = @json['summary'] || ''
|
@account.note = @json['summary'] || ''
|
||||||
@account.locked = @json['manuallyApprovesFollowers'] || false
|
@account.locked = @json['manuallyApprovesFollowers'] || false
|
||||||
|
|
Loading…
Reference in New Issue