diff --git geotaxonomy.module geotaxonomy.module
index 5deb226..0d6cc06 100644
--- geotaxonomy.module
+++ geotaxonomy.module
@@ -152,6 +152,12 @@ function geotaxonomy_taxonomy($op = NULL, $type = NULL, $term = NULL){
         db_query("DELETE FROM {term_geo} WHERE tid = %d", $term['tid']);
         break;
       case 'update':
+        if (!isset($term['lat']) && !isset($term['bound_top'])) {
+          // try loading term data before deleting it -- various taxonomy forms
+          // don't load geotaxonomy data before getting here
+          $data = geotaxonomy_get_term($term['tid']);
+          $term = array_merge($term, $data);
+        }
         db_query("DELETE FROM {term_geo} WHERE tid = %d", $term['tid']);
       case 'insert':
         geotaxonomy_write_record($term);
