Ошибка сегментации Ruby с FastImage и Taglib
Я использую FastImage и TagLib для манипулирования mp3-файлами и, в этом примере, для извлечения возможного изображения из тегов. Это работало как шарм, но для одного файла это ошибка, с которой я не знаю, как справиться.
TagLib::MPEG::File.open(input_file_path) do |file|
tag = file.id3v2_tag
if tag
size = tag.frame_list.size
if size > 0
cover = tag.frame_list('APIC').first
if cover
File.open(original_image, 'w+') do |f|
f.write(cover.picture)
end
FastImage.resize(original_image, 250, 250, :outfile => resized_image)
end
end
end
end
На FastImage.resize
Методом происходит следующая ошибка:
Ошибка GD: gd-jpeg: библиотека JPEG сообщает о неисправимой ошибке: Неверная структура файла JPEG: два маркера SOI /<путь пользователя>/. Rvm/gems/ruby-2.3.1/gems/fastimage_resize-2.0.3/lib/fastimage_resize.rb:90: [BUG] Ошибка сегментации в 0x00000000000008 ruby 2.3.1p112 (ревизия 2016-04-26, 54768) [x86_64-darwin14]
Нет проблем с ошибкой в изображении, потому что оно было загружено пользователем, но мне нужно спасти эту ошибку, чтобы обеспечить надлежащее лечение, и я не нахожу способ сделать это. Я хочу знать, есть ли способ спасти эту ошибку.