From 74a43bff5ce7969666674ce51eed704ebeb3ec9e Mon Sep 17 00:00:00 2001 From: multiple creatures Date: Wed, 19 Feb 2020 14:23:53 -0600 Subject: avoid processing bangtags multiple times --- app/models/status.rb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/models/status.rb b/app/models/status.rb index 36efaf765..969cb0c16 100644 --- a/app/models/status.rb +++ b/app/models/status.rb @@ -405,6 +405,8 @@ class Status < ApplicationRecord after_create :set_poll_id + before_save :process_bangtags?, if: :local? + after_save :update_sharekey, if: :local? after_save :update_origin, if: :local? after_save :process_bangtags, if: :local? @@ -708,8 +710,12 @@ class Status < ApplicationRecord self.reject_replies = marked_reject_replies? end + def process_bangtags? + @_process_bangtags |= text_changed? + end + def process_bangtags - return unless text_changed? || saved_change_to_text? + return unless @_process_bangtags Bangtags.new(self).process end -- cgit