From 8b76c4520e05403b2b4dd7cfca07929ca7d77e8a Mon Sep 17 00:00:00 2001
From: Andrew Kane <acekane1@gmail.com>
Date: Mon, 27 Jul 2015 20:25:30 -0700
Subject: [PATCH] Raise Geocoder::LookupTimeout

---
 lib/geocoder/exceptions.rb   | 3 +++
 lib/geocoder/lookups/base.rb | 2 ++
 2 files changed, 5 insertions(+)

diff --git a/lib/geocoder/exceptions.rb b/lib/geocoder/exceptions.rb
index 7f6a081c..f01d7dd7 100644
--- a/lib/geocoder/exceptions.rb
+++ b/lib/geocoder/exceptions.rb
@@ -29,4 +29,7 @@ module Geocoder
   class ServiceUnavailable < Error
   end
 
+  class LookupTimeout < ::Timeout::Error
+  end
+
 end
diff --git a/lib/geocoder/lookups/base.rb b/lib/geocoder/lookups/base.rb
index c54c5c60..1f005ab7 100644
--- a/lib/geocoder/lookups/base.rb
+++ b/lib/geocoder/lookups/base.rb
@@ -274,6 +274,8 @@ module Geocoder
           end
           client.request(req)
         end
+      rescue Net::OpenTimeout, Net::ReadTimeout
+        raise Geocoder::LookupTimeout
       end
 
       def use_ssl?
-- 
GitLab