Browse Source

Fix #3378 - If favourite/reblog already exists, return it instead of failing (#3641)

closed-social-glitch-2
Eugen Rochko 6 years ago
committed by GitHub
parent
commit
b87eb8ea14
2 changed files with 8 additions and 0 deletions
  1. +4
    -0
      app/services/favourite_service.rb
  2. +4
    -0
      app/services/reblog_service.rb

+ 4
- 0
app/services/favourite_service.rb View File

@ -10,6 +10,10 @@ class FavouriteService < BaseService
def call(account, status)
authorize_with account, status, :show?
favourite = Favourite.find_by(account: account, status: status)
return favourite unless favourite.nil?
favourite = Favourite.create!(account: account, status: status)
if status.local?

+ 4
- 0
app/services/reblog_service.rb View File

@ -13,6 +13,10 @@ class ReblogService < BaseService
authorize_with account, reblogged_status, :reblog?
reblog = account.statuses.find_by(reblog: reblogged_status)
return reblog unless reblog.nil?
reblog = account.statuses.create!(reblog: reblogged_status, text: '')
DistributionWorker.perform_async(reblog.id)

Loading…
Cancel
Save