diff options
Diffstat (limited to 'app/lib')
-rw-r--r-- | app/lib/activitypub/activity/create.rb | 6 | ||||
-rw-r--r-- | app/lib/formatter.rb | 4 | ||||
-rw-r--r-- | app/lib/sanitize_config.rb | 2 |
3 files changed, 7 insertions, 5 deletions
diff --git a/app/lib/activitypub/activity/create.rb b/app/lib/activitypub/activity/create.rb index 6b16c9986..2bc33c04b 100644 --- a/app/lib/activitypub/activity/create.rb +++ b/app/lib/activitypub/activity/create.rb @@ -267,7 +267,11 @@ class ActivityPub::Activity::Create < ActivityPub::Activity def conversation_from_uri(uri) return nil if uri.nil? return Conversation.find_by(id: OStatus::TagManager.instance.unique_tag_to_local_id(uri, 'Conversation')) if OStatus::TagManager.instance.local_id?(uri) - Conversation.find_by(uri: uri) || Conversation.create(uri: uri) + begin + Conversation.find_or_create_by!(uri: uri) + rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotUnique + retry + end end def visibility_from_audience diff --git a/app/lib/formatter.rb b/app/lib/formatter.rb index a099ff728..8a2828bbf 100644 --- a/app/lib/formatter.rb +++ b/app/lib/formatter.rb @@ -137,8 +137,6 @@ class Formatter private def markdown_formatter - return @markdown_formatter if defined?(@markdown_formatter) - extensions = { autolink: true, no_intra_emphasis: true, @@ -163,7 +161,7 @@ class Formatter link_attributes: { target: '_blank', rel: 'nofollow noopener' }, }) - @markdown_formatter = Redcarpet::Markdown.new(renderer, extensions) + Redcarpet::Markdown.new(renderer, extensions) end def html_entities diff --git a/app/lib/sanitize_config.rb b/app/lib/sanitize_config.rb index 23d0a418f..75c916485 100644 --- a/app/lib/sanitize_config.rb +++ b/app/lib/sanitize_config.rb @@ -31,7 +31,7 @@ class Sanitize add_attributes: { 'a' => { - 'rel' => 'nofollow noopener', + 'rel' => 'nofollow noopener tag', 'target' => '_blank', }, }, |