From 5ed37db2ef1d120a386270e4c3e52efe4e520077 Mon Sep 17 00:00:00 2001
From: Alex Reisner <alex@alexreisner.com>
Date: Mon, 16 May 2011 22:38:16 -0400
Subject: [PATCH] Fix bug: nil result on Freegeoip bad response.

In certain conditions a lookup returned [nil] instead of [], which
caused a Result object to be initialized with no data.
---
 lib/geocoder/lookups/freegeoip.rb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/geocoder/lookups/freegeoip.rb b/lib/geocoder/lookups/freegeoip.rb
index 9ff4ac4a..d9112bf8 100644
--- a/lib/geocoder/lookups/freegeoip.rb
+++ b/lib/geocoder/lookups/freegeoip.rb
@@ -10,7 +10,7 @@ module Geocoder::Lookup
       # don't look up a loopback address, just return the stored result
       return [reserved_result(query)] if loopback_address?(query)
       begin
-        return [fetch_data(query, reverse)]
+        return (doc = fetch_data(query, reverse)) ? [doc] : []
       rescue StandardError # Freegeoip.net returns HTML on bad request
         return []
       end
-- 
GitLab