about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--app/controllers/api/v1/media_controller.rb4
-rw-r--r--app/services/update_remote_profile_service.rb2
2 files changed, 6 insertions, 0 deletions
diff --git a/app/controllers/api/v1/media_controller.rb b/app/controllers/api/v1/media_controller.rb
index 4896534ad..7efe38bd8 100644
--- a/app/controllers/api/v1/media_controller.rb
+++ b/app/controllers/api/v1/media_controller.rb
@@ -4,5 +4,9 @@ class Api::V1::MediaController < ApiController
 
   def create
     @media = MediaAttachment.create!(account: current_user.account, file: params[:file])
+  rescue Paperclip::Errors::NotIdentifiedByImageMagickError
+    render json: { error: 'File type of uploaded media could not be verified' }, status: 422
+  rescue Paperclip::Error
+    render json: { error: 'Error processing thumbnail for uploaded media' }, status: 500
   end
 end
diff --git a/app/services/update_remote_profile_service.rb b/app/services/update_remote_profile_service.rb
index 5f1d3caeb..595fa4244 100644
--- a/app/services/update_remote_profile_service.rb
+++ b/app/services/update_remote_profile_service.rb
@@ -1,5 +1,7 @@
 class UpdateRemoteProfileService < BaseService
   def call(author_xml, account)
+    return if author_xml.nil?
+
     if author_xml.at_xpath('./poco:displayName').nil?
       account.display_name = account.username
     else