validates_attachment_content_type

Witam.
Mam drobny problem z validiacją z paperclipem.

W bundle mam:
Using paperclip (2.7.0)
Using mimetype-fu (0.1.2)

Model

[code]class Image < ActiveRecord::Base
attr_accessible :photo
attr_accessor :photo
has_attached_file :photo, :styles => { :original => “850x850>”, :medium => “621”, :thumb => “150x150>” },
:url => “/photos/:style/:basename.:extension”

validates_attachment_presence :photo
validates_attachment_content_type :photo, :content_type => [ ‘image/jpeg’ ], :message => ‘Plik musi być zdjęciem w formacie jpg, jpeg, png’
validates_attachment_size :photo, :less_than => 2.megabyte, :message => ‘Plik przekracza maksymalną wielkość 2MB’

before_create :random_file_name

belongs_to :page
belongs_to :gallery

private
def random_file_name
if photo?
extension = File.extname(photo_file_name).downcase
self.photo.instance_write(:file_name, “#{SecureRandom.hex(10)}#{extension}”)
end
end
end[/code]
Problem polega na tym że kiedy podam plik np tekstowy to uparty paperclip usilnie stara się go przeskalować do podanych styli i zwiesza mi aplikację na jakieś 30 sekund, po tym czasie kulturalnie zgłasza mi komunikat ‘Plik musi być zdjęciem w formacie jpg, jpeg, png’
Dodałem nawet gema mimetype-fu. Z tego co wyczytałem to na windows sprawdza contenttype tylko po rozszeżeniu które w moim przypadku jest txt.

Dodam jeszcze komunikat z konsoli

Processing by Admin::ImagesController#create as JSON Parameters: {"image"=>{"photo"=>#<ActionDispatch::Http::UploadedFile:0x607e990 @content_type="text/plain", @original_filename=" Nowy dokument tekstowy.txt", @tempfile=#<File:C:/Users/mkroszka/AppData/Local/Temp/RackMultipart20120817-2204-1trcs9w-0>, @header s="Content-Disposition: form-data; name=\"image[photo]\"; filename=\"Nowy dokument tekstowy.txt\"\r\nContent-Type: text/plain\r\n ">}, "authenticity_token"=>"NEGTVcriRoVLVEtQB3gQfvL2xbc2KP3bhF9muHEMujQ=", "utf8"=>"Ôťô"} e[32mCommande[0m :: identify -format %wx%h "C:/Users/mkroszka/AppData/Local/Temp/stream20120817-2204-1s100al-0.txt[0]" e[32mCommande[0m :: convert "C:/Users/mkroszka/AppData/Local/Temp/stream20120817-2204-1s100al-0.txt[0]" -resize "850x850>" "C:/Us ers/mkroszka/AppData/Local/Temp/stream20120817-2204-1s100al-020120817-2204-1yfq1s2-0" e[32mCommande[0m :: identify -format %wx%h "C:/Users/mkroszka/AppData/Local/Temp/stream20120817-2204-1s100al-020120817-2204-1yfq1 s2-0[0]" e[32mCommande[0m :: convert "C:/Users/mkroszka/AppData/Local/Temp/stream20120817-2204-1s100al-020120817-2204-1yfq1s2-0[0]" -resiz e "150x150>" "C:/Users/mkroszka/AppData/Local/Temp/stream20120817-2204-1s100al-020120817-2204-1yfq1s2-020120817-2204-1p2wmz4-0" e[32mCommande[0m :: identify -format %wx%h "C:/Users/mkroszka/AppData/Local/Temp/stream20120817-2204-1s100al-020120817-2204-1yfq1 s2-0[0]" e[32mCommande[0m :: convert "C:/Users/mkroszka/AppData/Local/Temp/stream20120817-2204-1s100al-020120817-2204-1yfq1s2-0[0]" -resiz e "621" "C:/Users/mkroszka/AppData/Local/Temp/stream20120817-2204-1s100al-020120817-2204-1yfq1s2-020120817-2204-vmj0sy-0" e[1me[35m (0.0ms)e[0m BEGIN e[1me[36m (0.0ms)e[0m e[1mROLLBACKe[0m Completed 200 OK in 42180ms (Views: 0.0ms | ActiveRecord: 0.0ms)