From 684104b2b39d77f9de82360fcda03d1f87f253cf Mon Sep 17 00:00:00 2001 From: magnolia-fan Date: Mon, 19 Sep 2011 03:39:03 +0400 Subject: [PATCH] 404 error handling --- VERSION | 2 +- lib/models/music_brainz.rb | 2 +- lib/models/music_brainz/artist.rb | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/VERSION b/VERSION index c8a5397..c0a1ac1 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.4.5 \ No newline at end of file +0.4.6 \ No newline at end of file diff --git a/lib/models/music_brainz.rb b/lib/models/music_brainz.rb index 5b2fc6e..fb9c325 100644 --- a/lib/models/music_brainz.rb +++ b/lib/models/music_brainz.rb @@ -14,7 +14,7 @@ module MusicBrainz response = open(url, "User-Agent" => "gem musicbrainz (https://github.com/magnolia-fan/musicbrainz) @ " + Socket.gethostname) @@last_query_time = Time.now.to_f rescue => e - # MusicBrainz: 503 + return nil if e.io.status[0].to_i == 404 end break unless response.nil? end diff --git a/lib/models/music_brainz/artist.rb b/lib/models/music_brainz/artist.rb index e74358b..ef82b32 100644 --- a/lib/models/music_brainz/artist.rb +++ b/lib/models/music_brainz/artist.rb @@ -16,7 +16,9 @@ module MusicBrainz end def self.find mbid - @artist = self.parse_xml(Nokogiri::XML(MusicBrainz.load('http://musicbrainz.org/ws/2/artist/' + mbid))) + res = MusicBrainz.load('http://musicbrainz.org/ws/2/artist/' + mbid) + return nil if res.nil? + @artist = self.parse_xml(Nokogiri::XML()) end def self.parse_xml xml