--- location_search.module	2008-10-09 15:11:09.000000000 -0700
+++ location_searchNew.module	2010-08-18 23:36:25.000000000 -0700
@@ -69,6 +69,11 @@ function _location_search($op = 'search'
       $join2 = '';
       $sort_parameters = 'ORDER BY score DESC';
 
+      if ($nodetitle = search_query_extract($keys, 'title')) {
+        $nodetitle = check_plain(addslashes($nodetitle));
+        $keys = search_query_insert($keys, 'title');
+      } 
+      
       if ($country = search_query_extract($keys, 'country')) {
         $countries = array();
         foreach (explode(',', $country) as $c) {
@@ -131,8 +136,8 @@ function _location_search($op = 'search'
         if ($proximity) {
           $add = ', '. earth_distance_sql($lon, $lat, 'l') .' AS distance';
         }
-        $query = "SELECT l.lid$add FROM {location} l WHERE $conditions1";
-        $countquery = "SELECT COUNT(*) FROM {location} l WHERE $conditions1";
+        $query = "SELECT l.lid$add FROM {location} l RIGHT JOIN {location_instance} li ON l.lid = li.lid RIGHT JOIN {node} n ON n.nid = li.nid WHERE $conditions1 AND n.title LIKE '%%".$nodetitle."%%'"; 
+        $countquery = "SELECT COUNT(*) FROM {location} l INNER JOIN {node} n ON n.nid = l.lid WHERE $conditions1 AND n.title LIKE '%%".$nodetitle."%%'";
         $result = pager_query($query, 10, 0, $countquery, $arguments1);
         while ($row = db_fetch_object($result)) {
           $lids[] = $row->lid;
