From 8038c663b0c1ff350cd1333957a4787ece1fde76 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 22 Dec 2016 11:34:05 +0100 Subject: [PATCH] Ensure that reblogs and favs always refer to the original status rather than a reblog wrapper --- app/models/favourite.rb | 4 ++++ app/models/status.rb | 1 + 2 files changed, 5 insertions(+) diff --git a/app/models/favourite.rb b/app/models/favourite.rb index 541ca08314..2fc3d18cde 100644 --- a/app/models/favourite.rb +++ b/app/models/favourite.rb @@ -28,4 +28,8 @@ class Favourite < ApplicationRecord def target thread end + + before_validation do + self.status = status.reblog if status.reblog? + end end diff --git a/app/models/status.rb b/app/models/status.rb index e87828e328..76ada52275 100644 --- a/app/models/status.rb +++ b/app/models/status.rb @@ -160,6 +160,7 @@ class Status < ApplicationRecord before_validation do text.strip! + self.reblog = reblog.reblog if reblog? && reblog.reblog? self.in_reply_to_account_id = thread.account_id if reply? end end