From 29397fb64d302d9dac81521c24e934e588d61ee8 Mon Sep 17 00:00:00 2001 From: Giuseppe Bilotta Date: Wed, 9 Apr 2008 23:13:50 +0200 Subject: hl2 plugin: handle send errors as well --- data/rbot/plugins/hl2.rb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/data/rbot/plugins/hl2.rb b/data/rbot/plugins/hl2.rb index 5023e01c..c11beee9 100644 --- a/data/rbot/plugins/hl2.rb +++ b/data/rbot/plugins/hl2.rb @@ -24,14 +24,15 @@ class HL2Plugin < Plugin def a2s_info(addr, port) socket = UDPSocket.new() - socket.send(A2S_INFO, 0, addr, port.to_i) - response = nil - begin + socket.send(A2S_INFO, 0, addr, port.to_i) + response = nil + timeout(TIMEOUT) do response = socket.recvfrom(1400,0) end - rescue Exception + rescue Exception => e + error e end socket.close() @@ -45,7 +46,7 @@ class HL2Plugin < Plugin def hl2(m, params) addr, port = params[:conn_str].split(':') info = a2s_info(addr, port) - if info != nil + if info m.reply "#{info[3]} is online with #{info[8]}/#{info[9]} players." else m.reply "Couldn't connect to #{params[:conn_str]}" -- cgit v1.2.3