diff --git a/project_issue.module b/project_issue.module
index fc7e91b..c26af14 100644
--- a/project_issue.module
+++ b/project_issue.module
@@ -1774,8 +1774,18 @@ function project_issue_preprocess_comment(&$variables) {
   if (project_issue_node_type_is_issue($variables['node']->type)) {
     // Allow comment_easy_reply to take over if it exists.
     if (!module_exists('comment_easy_reply')) {
-      $uri = entity_uri('comment', $comment);
-      $uri['options'] += array('attributes' => array('class' => 'permalink', 'rel' => 'bookmark'));
+      $uri = entity_uri('node', $variables['node']);
+      $uri['options'] += array(
+        'attributes' => array('class' => array('permalink'), 'rel' => 'bookmark'),
+        'fragment' => 'comment-' . $comment->cid,
+        'query' => array(),
+      );
+      $display_page = comment_get_display_page($comment->cid, 'project_issue');
+      if ($display_page > 0) {
+        $uri['options']['query'] += array(
+          'page' => $display_page,
+        );
+      }
       // Use the thread as the link text for comment number.  During preview,
       // the comment thread property does not exist, so we estimate based on
       // the current $node->comment_count value.
