Index: includes/common.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/common.inc,v
retrieving revision 1.561
diff -u -F^f -r1.561 common.inc
--- includes/common.inc	23 Aug 2006 05:55:37 -0000	1.561
+++ includes/common.inc	23 Aug 2006 06:30:35 -0000
@@ -153,14 +153,21 @@ function drupal_get_headers() {
  *
  * @param $url
  *   The url for the feed
+ * @param $title
+ *   The title of the feed
  * @param $theme_function
  *   The name of the theming function to use to style the feed icon, defaults to theme_feed_icon()
  */
-function drupal_add_feed($url = NULL, $theme_function = 'feed_icon') {
+function drupal_add_feed($url = NULL, $title = '', $theme_function = 'feed_icon') {
   static $stored_feed_links = array();
 
   if (!is_null($url)) {
     $stored_feed_links[$url] = theme($theme_function, $url);
+
+    drupal_add_link(array('rel' => 'alternate',
+                          'type' => 'application/rss+xml',
+                          'title' => $title,
+                          'href' => $urlencoded));
   }
   return $stored_feed_links;
 }
Index: modules/blog/blog.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/blog/blog.module,v
retrieving revision 1.260
diff -u -F^f -r1.260 blog.module
--- modules/blog/blog.module	23 Aug 2006 05:55:37 -0000	1.260
+++ modules/blog/blog.module	23 Aug 2006 06:30:36 -0000
@@ -163,12 +163,8 @@ function blog_page_user($uid) {
       $output .= node_view(node_load($node->nid), 1);
     }
     $output .= theme('pager', NULL, variable_get('default_nodes_main', 10));
-    drupal_add_feed(url('blog/'. $account->uid .'/feed'));
+    drupal_add_feed(url('blog/'. $account->uid .'/feed'), t('RSS - !title', array('!title' => $title));
 
-    drupal_add_link(array('rel' => 'alternate',
-                          'type' => 'application/rss+xml',
-                          'title' => t('RSS - !title', array('!title' => $title)),
-                          'href' => url("blog/$account->uid/feed")));
     return $output;
   }
   else {
@@ -190,12 +186,8 @@ function blog_page_last() {
     $output .= node_view(node_load($node->nid), 1);
   }
   $output .= theme('pager', NULL, variable_get('default_nodes_main', 10));
-  drupal_add_feed(url('blog/feed'));
+  drupal_add_feed(url('blog/feed'), t('RSS - blogs'));
 
-  drupal_add_link(array('rel' => 'alternate',
-                        'type' => 'application/rss+xml',
-                        'title' => t('RSS - blogs'),
-                        'href' => url("blog/feed")));
   return $output;
 }
 
Index: modules/forum/forum.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/forum/forum.module,v
retrieving revision 1.351
diff -u -F^f -r1.351 forum.module
--- modules/forum/forum.module	23 Aug 2006 05:55:37 -0000	1.351
+++ modules/forum/forum.module	23 Aug 2006 06:30:37 -0000
@@ -930,13 +930,8 @@ function theme_forum_display($forums, $t
     $output .= theme('forum_list', $forums, $parents, $tid);
 
     if ($tid && !in_array($tid, variable_get('forum_containers', array()))) {
-      drupal_add_link(array('rel' => 'alternate',
-                            'type' => 'application/rss+xml',
-                            'title' => 'RSS - '. $title,
-                            'href' => url('taxonomy/term/'. $tid .'/0/feed')));
-
       $output .= theme('forum_topic_list', $tid, $topics, $sortby, $forum_per_page);
-      drupal_add_feed(url('taxonomy/term/'. $tid .'/0/feed'));
+      drupal_add_feed(url('taxonomy/term/'. $tid .'/0/feed'), 'RSS - '. $title);
     }
     $output .= '</div>';
   }
Index: modules/node/node.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.module,v
retrieving revision 1.683
diff -u -F^f -r1.683 node.module
--- modules/node/node.module	23 Aug 2006 05:55:37 -0000	1.683
+++ modules/node/node.module	23 Aug 2006 06:30:39 -0000
@@ -2257,11 +2257,7 @@ function node_page_default() {
 
   if (db_num_rows($result)) {
     $feed_url = url('rss.xml', NULL, NULL, TRUE);
-    drupal_add_feed($feed_url);
-    drupal_add_link(array('rel' => 'alternate',
-                          'type' => 'application/rss+xml',
-                          'title' => t('RSS'),
-                          'href' => $feed_url));
+    drupal_add_feed($feed_url, t('RSS'));
 
     $output = '';
     while ($node = db_fetch_object($result)) {
Index: modules/taxonomy/taxonomy.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/taxonomy/taxonomy.module,v
retrieving revision 1.305
diff -u -F^f -r1.305 taxonomy.module
--- modules/taxonomy/taxonomy.module	23 Aug 2006 05:55:38 -0000	1.305
+++ modules/taxonomy/taxonomy.module	23 Aug 2006 06:30:40 -0000
@@ -1251,13 +1251,8 @@ function taxonomy_term_page($str_tids = 
           $breadcrumbs = array_reverse($breadcrumbs);
           menu_set_location($breadcrumbs);
 
-          drupal_add_link(array('rel' => 'alternate',
-                                'type' => 'application/rss+xml',
-                                'title' => 'RSS - '. $title,
-                                'href' => url('taxonomy/term/'. $str_tids .'/'. $depth .'/feed')));
-
           $output = taxonomy_render_nodes(taxonomy_select_nodes($tids, $terms['operator'], $depth, TRUE));
-          drupal_add_feed(url('taxonomy/term/'. $str_tids .'/'. $depth .'/feed'));
+          drupal_add_feed(url('taxonomy/term/'. $str_tids .'/'. $depth .'/feed'), 'RSS - '. $title);
           return $output;
           break;
 