FIX: skip external urls which has upload url in query string.

Add spec tests for post.each_upload_url method. e8fafbc123170dd1f7d2a8adea4e7810585d3e76
This commit is contained in:
Vinoth Kannan
2019-06-11 19:55:02 +05:30
parent e2636f0ec7
commit 788f995f30
2 changed files with 28 additions and 1 deletions

View File

@ -897,7 +897,7 @@ class Post < ActiveRecord::Base
links = fragments.css("a/@href", "img/@src").map { |media| media.value }.uniq
links.each do |src|
next if src.blank? || upload_patterns.none? { |pattern| src =~ pattern }
next if src.blank? || upload_patterns.none? { |pattern| src.split("?")[0] =~ pattern }
src = "#{SiteSetting.force_https ? "https" : "http"}:#{src}" if src.start_with?("//")
next unless Discourse.store.has_been_uploaded?(src) || (include_local_upload && src =~ /\A\/[^\/]/i)