=== modified file 'uc_catalog/uc_catalog.install'
--- uc_catalog/uc_catalog.install	2009-01-30 21:07:24 +0000
+++ uc_catalog/uc_catalog.install	2009-07-13 22:42:39 +0000
@@ -111,6 +111,12 @@ function uc_catalog_update_1() {
 }
 
 function uc_catalog_update_2() {
+  // Set an alias before we delete the user setting.
+  $alias = variable_get('uc_catalog_url', 'catalog');
+  if ('catalog' != $alias) {
+    path_set_alias('catalog', $alias);
+  }
+  
   variable_del('uc_catalog_url');
   return array(array('success' => TRUE, 'query' => "variable_del('uc_catalog_url')"));
 }

=== modified file 'uc_catalog/uc_catalog.module'
--- uc_catalog/uc_catalog.module	2009-07-01 19:46:54 +0000
+++ uc_catalog/uc_catalog.module	2009-07-13 22:39:38 +0000
@@ -207,12 +207,12 @@ function uc_catalog_nodeapi(&$node, $op,
       case 'view':
         if ($a4 == TRUE && variable_get('uc_catalog_breadcrumb', TRUE)) {
           $crumbs = array();
-          if (variable_get('site_frontpage', 'node') != 'catalog') {
+          if (!_uc_catalog_is_frontpage()) {
             $crumbs[] = l(t('Home'), '');
           }
           $terms = taxonomy_node_get_terms_by_vocabulary($node, variable_get('uc_catalog_vid', 0));
           if (count($terms)) {
-            $crumbs[] = l(variable_get('uc_catalog_name', t('Catalog')), variable_get('uc_catalog_url', 'catalog'));
+            $crumbs[] = l(variable_get('uc_catalog_name', t('Catalog')), 'catalog');
             $used_tids = array();
             foreach ($terms as $term) {
               if (!isset($parents[$term->tid])) {
@@ -774,7 +774,7 @@ function uc_catalog_set_breadcrumb($tid)
   static $terms = array();
   if (variable_get('uc_catalog_breadcrumb', TRUE)) {
     if (empty($breadcrumbs)) {
-      if (variable_get('site_frontpage', 'node') != 'catalog') {
+      if (!_uc_catalog_is_frontpage()) {
         $breadcrumbs[] = l(t('Home'), '');
       }
       if ($tid != 0) {
@@ -974,3 +974,7 @@ function uc_catalog_add_node_type($type)
     db_query("INSERT INTO {vocabulary_node_types} (vid, type) VALUES (%d, '%s')", $vid, $type);
   }
 }
+
+function _uc_catalog_is_frontpage() {
+  return drupal_get_normal_path(variable_get('site_frontpage', 'node')) == 'catalog';
+}

