Index: wp-includes/taxonomy.php
===================================================================
--- wp-includes/taxonomy.php	(revision 14186)
+++ wp-includes/taxonomy.php	(working copy)
@@ -2363,10 +2363,10 @@
  * @since 2.5.0
  *
  * @param object|int|string $term
- * @param string $taxonomy
+ * @param string $taxonomy (optional if $term is object)
  * @return string HTML link to taxonomy term archive
  */
-function get_term_link( $term, $taxonomy ) {
+function get_term_link( $term, $taxonomy = '') {
 	global $wp_rewrite;
 
 	if ( !is_object($term) ) {
@@ -2383,6 +2383,8 @@
 	if ( is_wp_error( $term ) )
 		return $term;
 
+	$taxonomy = $term->taxonomy;
+
 	// use legacy functions for core taxonomies until they are fully plugged in
 	if ( $taxonomy == 'category' )
 		return get_category_link((int) $term->term_id);
@@ -2479,7 +2481,7 @@
 		$links = array();
 
 		foreach ( $terms as $term )
-			$links[] = "<a href='" . esc_attr(get_term_link($term, $taxonomy)) . "'>$term->name</a>";
+			$links[] = "<a href='" . esc_attr( get_term_link($term) ) . "'>$term->name</a>";
 
 		if ( $links )
 			$taxonomies[$taxonomy] = wp_sprintf($t['template'], $t['label'], $links, $terms);
Index: wp-includes/classes.php
===================================================================
--- wp-includes/classes.php	(revision 14186)
+++ wp-includes/classes.php	(working copy)
@@ -1436,9 +1436,9 @@
 	function start_el(&$output, $category, $depth, $args) {
 		extract($args);
 
-		$cat_name = esc_attr( $category->name);
+		$cat_name = esc_attr( $category->name );
 		$cat_name = apply_filters( 'list_cats', $cat_name, $category );
-		$link = '<a href="' . get_term_link( $category, $category->taxonomy ) . '" ';
+		$link = '<a href="' . esc_attr( get_term_link($category) ) . '" ';
 		if ( $use_desc_for_title == 0 || empty($category->description) )
 			$link .= 'title="' . sprintf(__( 'View all posts filed under %s' ), $cat_name) . '"';
 		else
