Skip remote media URLs that don't have a hostname

master
Eugen Rochko 7 years ago
parent 3202bdd744
commit 53ae431867
  1. 2
      app/models/account.rb
  2. 3
      app/services/process_feed_service.rb

@ -138,7 +138,7 @@ class Account < ApplicationRecord
def avatar_remote_url=(url)
parsed_url = URI.parse(url)
return if !%w(http https).include?(parsed_url.scheme) || self[:avatar_remote_url] == url
return if !%w(http https).include?(parsed_url.scheme) || parsed_url.host.empty? || self[:avatar_remote_url] == url
self.avatar = parsed_url
self[:avatar_remote_url] = url

@ -181,6 +181,9 @@ class ProcessFeedService < BaseService
next unless link['href']
media = MediaAttachment.where(status: parent, remote_url: link['href']).first_or_initialize(account: parent.account, status: parent, remote_url: link['href'])
parsed_url = URI.parse(link['href'])
next if !%w(http https).include?(parsed_url.scheme) || parsed_url.host.empty?
begin
media.file_remote_url = link['href']

Loading…
Cancel
Save