Index: wp-includes/link-template.php
===================================================================
--- wp-includes/link-template.php	(revision 9819)
+++ wp-includes/link-template.php	(working copy)
@@ -1230,20 +1230,20 @@
 
 	$base = trailingslashit( get_bloginfo( 'home' ) );
 
-	$result = $base . $request;
+	$result = user_trailingslashit($base . $request);
 	
 	if ( 'newest' == get_option('default_comments_page') ) {
 		if ( $pagenum != $max_page ) {
 			if ( $wp_rewrite->using_permalinks() )
-				$result = user_trailingslashit( trailingslashit($base . $request) . 'comment-page-' . $pagenum, 'commentpaged');
+				$result = user_trailingslashit( trailingslashit($result) . 'comment-page-' . $pagenum, 'commentpaged');
 			else
-				$result = add_query_arg( 'cpage', $pagenum, $base . $request );
+				$result = add_query_arg( 'cpage', $pagenum, $result );
 		}
 	} elseif ( $pagenum > 1 ) {
 		if ( $wp_rewrite->using_permalinks() )
-			$result = user_trailingslashit( trailingslashit($base . $request) . 'comment-page-' . $pagenum, 'commentpaged');
+			$result = user_trailingslashit( trailingslashit($result) . 'comment-page-' . $pagenum, 'commentpaged');
 		else
-			$result = add_query_arg( 'cpage', $pagenum, $base . $request );
+			$result = add_query_arg( 'cpage', $pagenum, $result );
 	}
 
 	$result .= '#comments';
Index: wp-includes/canonical.php
===================================================================
--- wp-includes/canonical.php	(revision 9819)
+++ wp-includes/canonical.php	(working copy)
@@ -165,10 +165,11 @@
 				$redirect['query'] = remove_query_arg( 'cpage', $redirect['query'] );
 			}
 
-			$paged_redirect['path'] = trailingslashit( preg_replace('|/index.php/?$|', '/', $paged_redirect['path']) ); // strip off trailing /index.php/
+			$paged_redirect['path'] = user_trailingslashit( preg_replace('|/index.php/?$|', '/', $paged_redirect['path']) ); // strip off trailing /index.php/
 			if ( !empty( $addl_path ) && $wp_rewrite->using_index_permalinks() && strpos($paged_redirect['path'], '/index.php/') === false )
-				$paged_redirect['path'] .= 'index.php/';
-			$paged_redirect['path'] .= $addl_path;
+				$paged_redirect['path'] = trailingslashit($paged_redirect['path']) . 'index.php/';
+			if ( !empty( $addl_path ) )
+				$paged_redirect['path'] = trailingslashit($paged_redirect['path']) . $addl_path;
 			$redirect_url = $paged_redirect['scheme'] . '://' . $paged_redirect['host'] . $paged_redirect['path'];
 			$redirect['path'] = $paged_redirect['path'];
 		}
