mirror of
https://github.com/mastodon/mastodon.git
synced 2024-12-23 11:01:27 +01:00
Fix processing of media files with unusual names (#25788)
This commit is contained in:
parent
f2bbac3f9f
commit
53b979d5c7
3 changed files with 19 additions and 1 deletions
|
@ -24,7 +24,7 @@ module Attachmentable
|
|||
def self.has_attached_file(name, options = {}) # rubocop:disable Naming/PredicateName
|
||||
super(name, options)
|
||||
|
||||
send(:"before_#{name}_validate") do
|
||||
send(:"before_#{name}_validate", prepend: true) do
|
||||
attachment = send(name)
|
||||
check_image_dimension(attachment)
|
||||
set_file_content_type(attachment)
|
||||
|
|
BIN
spec/fixtures/files/attachment-jpg.123456_abcd
vendored
Normal file
BIN
spec/fixtures/files/attachment-jpg.123456_abcd
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 60 KiB |
18
spec/requests/api/v2/media_spec.rb
Normal file
18
spec/requests/api/v2/media_spec.rb
Normal file
|
@ -0,0 +1,18 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe 'Media API', paperclip_processing: true do
|
||||
let(:user) { Fabricate(:user) }
|
||||
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
|
||||
let(:scopes) { 'write' }
|
||||
let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
|
||||
|
||||
describe 'POST /api/v2/media' do
|
||||
it 'returns http success' do
|
||||
post '/api/v2/media', headers: headers, params: { file: fixture_file_upload('attachment-jpg.123456_abcd', 'image/jpeg') }
|
||||
expect(File.exist?(user.account.media_attachments.first.file.path(:small))).to be true
|
||||
expect(response).to have_http_status(200)
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue