Skip to content

Commit 258e5c4

Browse files
Fix interaction policy changes in implicit updates not being saved (mastodon#35751)
1 parent 69ee043 commit 258e5c4

2 files changed

Lines changed: 18 additions & 1 deletion

File tree

app/services/activitypub/process_status_update_service.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ def handle_implicit_update!
7474
end
7575

7676
def update_interaction_policies!
77-
@status.quote_approval_policy = @status_parser.quote_policy
77+
@status.update(quote_approval_policy: @status_parser.quote_policy)
7878
end
7979

8080
def update_media_attachments!

spec/services/activitypub/fetch_remote_status_service_spec.rb

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,6 +316,23 @@
316316
expect(existing_status.edits).to_not be_empty
317317
end
318318
end
319+
320+
context 'with an implicit update to quoting policy' do
321+
let(:object) do
322+
note.merge({
323+
'content' => existing_status.text,
324+
'interactionPolicy' => {
325+
'canQuote' => {
326+
'automaticApproval' => ['https://www.w3.org/ns/activitystreams#Public'],
327+
},
328+
},
329+
})
330+
end
331+
332+
it 'updates status' do
333+
expect(existing_status.reload.quote_approval_policy).to eq(Status::QUOTE_APPROVAL_POLICY_FLAGS[:public] << 16)
334+
end
335+
end
319336
end
320337
end
321338

0 commit comments

Comments
 (0)