Index: modules/comment.module
===================================================================
--- modules/comment.module	(revision 5751)
+++ modules/comment.module	(working copy)
@@ -453,7 +453,15 @@
 function comment_reply($nid, $pid = NULL) {
   // set the breadcrumb trail
   $node = node_load($nid);
-  menu_set_location(array(array('path' => "node/$nid", 'title' => $node->title), array('path' => "comment/reply/$nid")));
+  if ($node->type == 'forum' && function_exists('forum_node_breadcrumb')) {
+    $breadcrumb = forum_node_breadcrumb($node);
+    $breadcrumb[] = array('path' => "node/$nid", 'title' => $node->title);
+    $breadcrumb[] = array('path' => "comment/reply/$nid");
+    menu_set_location($breadcrumb);
+  }
+  else {
+    menu_set_location(array(array('path' => "node/$nid", 'title' => $node->title), array('path' => "comment/reply/$nid")));
+  }
 
   $op = isset($_POST['op']) ? $_POST['op'] : '';
 
Index: modules/forum.module
===================================================================
--- modules/forum.module	(revision 5751)
+++ modules/forum.module	(working copy)
@@ -498,25 +498,27 @@
  * Implementation of hook_view().
  */
 function forum_view(&$node, $teaser = FALSE, $page = FALSE) {
-
   if ($page) {
-    $vocabulary = taxonomy_get_vocabulary(variable_get('forum_nav_vocabulary', ''));
-    // Breadcrumb navigation
-    $breadcrumb = array();
-    $breadcrumb[] = array('path' => 'forum', 'title' => $vocabulary->name);
-    if ($parents = taxonomy_get_parents_all($node->tid)) {
-      $parents = array_reverse($parents);
-      foreach ($parents as $p) {
-        $breadcrumb[] = array('path' => 'forum/'. $p->tid, 'title' => $p->name);
-      }
-    }
-    $breadcrumb[] = array('path' => 'node/'. $node->nid);
-    menu_set_location($breadcrumb);
+    menu_set_location(forum_node_breadcrumb($node));
   }
-
   $node = node_prepare($node, $teaser);
 }
 
+function forum_node_breadcrumb($node) {
+  $vocabulary = taxonomy_get_vocabulary(variable_get('forum_nav_vocabulary', ''));
+  // Breadcrumb navigation
+  $breadcrumb = array();
+  $breadcrumb[] = array('path' => 'forum', 'title' => $vocabulary->name);
+  if ($parents = taxonomy_get_parents_all($node->tid)) {
+    $parents = array_reverse($parents);
+    foreach ($parents as $p) {
+      $breadcrumb[] = array('path' => 'forum/'. $p->tid, 'title' => $p->name);
+    }
+  }
+  $breadcrumb[] = array('path' => 'node/'. $node->nid);
+  return $breadcrumb;
+}
+
 /**
  * Implementation of hook_submit().
  *
