lib/softwear/auth/model.rb in softwear-lib-1.6.1 vs lib/softwear/auth/model.rb in softwear-lib-1.6.2

- old
+ new

@@ -185,10 +185,16 @@ rescue Errno::EPIPE => e @default_socket = TCPSocket.open(auth_server_host, auth_server_port) @default_socket.puts message end - return default_socket.gets.try(:chomp) || (raise AuthServerError, "Nil socket response?") + response = default_socket.gets.try(:chomp) + if response.nil? + @default_socket.close rescue nil + @default_socket = nil + return raw_query(message) + end + response rescue Errno::ECONNREFUSED => e raise AuthServerDown, "Unable to connect to the authentication server." rescue Errno::ETIMEDOUT => e