return
end
srv_uri = @server_list[@conn_count % @server_list.size].dup
- srv_uri = 'irc://' + srv_uri if !srv_uri =~ /:\/\//
+ srv_uri = 'irc://' + srv_uri if !(srv_uri =~ /:\/\//)
@conn_count += 1
@server_uri = URI.parse(srv_uri)
@server_uri.port = 6667 if !@server_uri.port
end
end
- def handle_socket_error(string, err)
- error "#{string} failed: #{err.inspect}"
- debug err.backtrace.join("\n")
+ def handle_socket_error(string, e)
+ error "#{string} failed: #{e.pretty_inspect}"
# We assume that an error means that there are connection
# problems and that we should reconnect, so we
shutdown
- raise SocketError.new(err.inspect)
+ raise SocketError.new(e.inspect)
end
# get the next line from the server (blocks)
reply.strip! if reply
debug "RECV: #{reply.inspect}"
return reply
- rescue => e
+ rescue Exception => e
handle_socket_error(:RECV, e)
end
end
if @sendq.empty?
@timer.stop
end
- rescue => e
- error "Spooling failed: #{e.inspect}"
- error e.backtrace.join("\n")
+ rescue Exception => e
+ error "Spooling failed: #{e.pretty_inspect}"
+ raise e
end
end
end
return unless connected?
begin
@sock.close
- rescue => err
- error "error while shutting down: #{err.inspect}"
- debug err.backtrace.join("\n")
+ rescue Exception => e
+ error "error while shutting down: #{e.pretty_inspect}"
end
@rawsock = nil if @ssl
@sock = nil
@burst = 0
+ @sendq.clear
end
private
@lines_sent += 1
@burst += 1
end
- rescue => e
+ rescue Exception => e
handle_socket_error(:SEND, e)
end
end