--- taxonomy_breadcrumb.inc.orig	2010-11-17 12:12:27.000000000 -0600
+++ taxonomy_breadcrumb.inc	2010-11-17 12:21:46.000000000 -0600
@@ -47,9 +47,10 @@
   $terms = taxonomy_node_get_terms($node);
   if (!empty($terms)) {
     if (count($terms) > 1) {
+      $vocs = taxonomy_get_vocabularies();
       foreach ($terms as $term) {
         // Only consider terms in the lightest vocabulary.
-        if (!isset($vid)) {
+        if (!isset($vid) or $vocs[$vid]->weight > $vocs[$term->vid]->weight) {
           $vid = $term->vid;
         }
         elseif ($term->vid != $vid) continue;

