--- orig/taxonomy.module 2007-01-25 16:51:36.000000000 -0500 +++ taxonomy.module 2007-05-10 01:50:01.390625000 -0400 @@ -816,6 +816,11 @@ function taxonomy_node_save($nid, $terms // See if the term exists in the chosen vocabulary // and return the tid; otherwise, add a new record. $possibilities = taxonomy_get_term_by_name($typed_term); + + //Check for synonyms before creating a new term. + $syn_root = taxonomy_get_synonym_root($typed_term); + if($syn_root) $possibilities[] = $syn_root; + $typed_term_tid = NULL; // tid match, if any. foreach ($possibilities as $possibility) { if ($possibility->vid == $vid) {