From 8a883060708168e72a36b8f919292497b0e7d979 Mon Sep 17 00:00:00 2001 From: Ward Wouts Date: Tue, 2 May 2006 10:47:59 +0000 Subject: [PATCH] robustness fixes --- trunk/ripnews/news/article.rb | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/trunk/ripnews/news/article.rb b/trunk/ripnews/news/article.rb index 2ea9980..f1a0cc0 100644 --- a/trunk/ripnews/news/article.rb +++ b/trunk/ripnews/news/article.rb @@ -82,7 +82,10 @@ end def quit @thr.exit + begin super + rescue EOFError + end end private :sendka @@ -131,6 +134,7 @@ def initialize(nntpservers, groupname, newsrc="~/.newsrc") set_skip_ids(server, @connections[server]["newsrc"].marked_articles(@group)) rescue SocketError, Errno::EINVAL, EOFError, Errno::ETIMEDOUT print "Connection to #{server} failed: #{$!}\n" + @connections[server]["nntp"].quit del_server(server) end } @@ -140,9 +144,6 @@ def reconnect(server) retries = 0 begin @connections[server]["nntp"].quit - # helpt dit in geheugen gebruik? : Volgens mij niet - #@connections[server].delete("nntp") - #GC.start rescue Errno::EPIPE, Errno::ECONNRESET, EOFError, Errno::ETIMEDOUT end begin @@ -152,7 +153,7 @@ def reconnect(server) @connections[server]["nntp"] = Net::KANNTP.new(server) end resp = @connections[server]["nntp"].mode_reader - rescue SocketError, Errno::EINVAL, EOFError, Errno::ETIMEDOUT, TimeoutError + rescue SocketError, Errno::EINVAL, EOFError, Errno::ETIMEDOUT, TimeoutError, Errno::ECONNREFUSED print "Reconnect to #{server} failed: #{$!}\n" if retries > 1 del_server(server)