diff --git a/views/views_geojson_bbox_argument.inc b/views/views_geojson_bbox_argument.inc
index 6e3c1f9..72e160c 100644
--- a/views/views_geojson_bbox_argument.inc
+++ b/views/views_geojson_bbox_argument.inc
@@ -135,18 +135,18 @@ class views_geojson_bbox_argument extends views_handler_argument {
       // @TODO: Maybe the field name can really just be "${lat_field_obj}_lat"?
       $lat_field_name = $lat_field_obj->field_info['storage']['details']['sql']['FIELD_LOAD_CURRENT'][$lat_field_table]['lat'];
     } else {
-      $lat_field_name = $lat_field_obj->field;
+      $lat_field_name = $lat_field_obj->real_field;
     }
     if (isset($lon_field_obj->field_info) && $lon_field_obj->field_info['type'] == 'geofield') {
       $lon_field_name = $lon_field_obj->field_info['storage']['details']['sql']['FIELD_LOAD_CURRENT'][$lon_field_table]['lon'];
     } else {
-      $lon_field_name = $lon_field_obj->field;
+      $lon_field_name = $lon_field_obj->real_field;
     }
 
     // Add JOIN(s) to query.
-    $this->query->add_table($lat_field_table);
-    if ($lon_field_table != $lat_field_table) {
-      $this->query->add_table($lon_field_table);
+    $this->query->ensure_table($lat_field_table);
+     if ($lon_field_table != $lat_field_table) {
+      $this->query->ensure_table($lon_field_table);
     }
 
     // Add WHERE(s) to query.
