Skip to content
This repository has been archived by the owner on Jun 26, 2018. It is now read-only.

Commit

Permalink
Preserve filename extensions to prevent AtomicParsley from segfaulting.
Browse files Browse the repository at this point in the history
  • Loading branch information
olly committed Jun 1, 2011
1 parent 8939b6c commit 498ad0a
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 3 deletions.
3 changes: 2 additions & 1 deletion lib/AtomicTV.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
require 'fileutils'
require 'open-uri'
require 'pathname'
require 'tempfile'
require 'tmpdir'

require 'plist'
require 'tvdb_party'
Expand Down
6 changes: 4 additions & 2 deletions lib/AtomicTV/episode_metadata.rb
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,11 @@ def writers
attr_reader :posters

def with_loaded_posters
temporary_directory = Dir.mktmpdir

@posters = series.season_posters(episode.season_number, 'en').map do |poster|
url = ArtworkBaseURL + poster.path
file = Tempfile.new('AtomicTV')
file = File.new(File.join(temporary_directory, File.basename(url)), 'w')
file.write(open(url).read)
file.close
file
Expand All @@ -91,7 +93,7 @@ def with_loaded_posters
yield

ensure
@posters.each {|file| file.unlink}
FileUtils.rm_rf(temporary_directory)
@posters = nil
end

Expand Down

0 comments on commit 498ad0a

Please sign in to comment.