diff --git a/lib/geocoder/lookups/yahoo.rb b/lib/geocoder/lookups/yahoo.rb
index 140044871b5f8d442bebf20f45963b2879252a5a..f27beca0da3e3af222279eb204cc3c7473f211b0 100644
--- a/lib/geocoder/lookups/yahoo.rb
+++ b/lib/geocoder/lookups/yahoo.rb
@@ -13,10 +13,10 @@ module Geocoder::Lookup
     def results(query)
       return [] unless doc = fetch_data(query)
       doc = doc['ResultSet']
-      if api_version(doc).to_i == 1
-        return version_1_results(doc)
-      elsif api_version(doc).to_i == 2
-        return version_2_results(doc)
+      if api_version(doc).to_i == 1 and r = version_1_results(doc)
+        return r
+      elsif api_version(doc).to_i == 2 and r = version_2_results(doc)
+        return r
       else
         warn "Yahoo Geocoding API error: #{doc['Error']} (#{doc['ErrorMessage']})."
         return []