From 87ac758f056dca91ff92ac522cc6f55bc19f7b7b Mon Sep 17 00:00:00 2001 From: Robin Ward Date: Wed, 24 May 2017 13:29:50 -0400 Subject: [PATCH] FIX: Don't raise an error when the upload can't be retrieved --- app/models/user_avatar.rb | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/app/models/user_avatar.rb b/app/models/user_avatar.rb index 02b9f6b39f..952d66630a 100644 --- a/app/models/user_avatar.rb +++ b/app/models/user_avatar.rb @@ -21,12 +21,14 @@ class UserAvatar < ActiveRecord::Base max = Discourse.avatar_sizes.max gravatar_url = "http://www.gravatar.com/avatar/#{email_hash}.png?s=#{max}&d=404" tempfile = FileHelper.download(gravatar_url, SiteSetting.max_image_size_kb.kilobytes, "gravatar") - upload = UploadCreator.new(tempfile, 'gravatar.png', origin: gravatar_url, type: "avatar").create_for(user_id) + if tempfile + upload = UploadCreator.new(tempfile, 'gravatar.png', origin: gravatar_url, type: "avatar").create_for(user_id) - if gravatar_upload_id != upload.id - gravatar_upload.try(:destroy!) rescue nil - self.gravatar_upload = upload - save! + if gravatar_upload_id != upload.id + gravatar_upload.try(:destroy!) rescue nil + self.gravatar_upload = upload + save! + end end rescue OpenURI::HTTPError save!