summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/comment/comment.module15
-rw-r--r--modules/comment/comment.test2
2 files changed, 11 insertions, 6 deletions
diff --git a/modules/comment/comment.module b/modules/comment/comment.module
index 1fb88a60a..c6516519b 100644
--- a/modules/comment/comment.module
+++ b/modules/comment/comment.module
@@ -2064,16 +2064,21 @@ function comment_form_submit($form, &$form_state) {
else {
drupal_set_message(t('Your comment has been posted.'));
}
- $redirect = array('comment/' . $comment->cid, array(), 'comment-' . $comment->cid);
+ $query = array();
+ // Find the current display page for this comment.
+ $page = comment_get_display_page($comment->cid, $node->type);
+ if ($page > 0) {
+ $query['page'] = $page;
+ }
+ // Redirect to the newly posted comment.
+ $redirect = array('node/' . $node->nid, $query, 'comment-' . $comment->cid);
}
else {
watchdog('content', 'Comment: unauthorized comment submitted or comment submitted to a closed post %subject.', array('%subject' => $comment->subject), WATCHDOG_WARNING);
drupal_set_message(t('Comment: unauthorized comment submitted or comment submitted to a closed post %subject.', array('%subject' => $comment->subject)), 'error');
- $page = comment_new_page_count($node->comment_count, 1, $node);
- $redirect = array('node/' . $node->nid, $page);
+ // Redirect the user to the node they are commenting on.
+ $redirect = 'node/' . $node->nid;
}
-
- // Redirect the user to the node they're commenting on.
unset($form_state['rebuild']);
$form_state['redirect'] = $redirect;
}
diff --git a/modules/comment/comment.test b/modules/comment/comment.test
index 3ba6b6717..bd835680c 100644
--- a/modules/comment/comment.test
+++ b/modules/comment/comment.test
@@ -46,7 +46,7 @@ class CommentHelperCase extends DrupalWebTestCase {
$this->drupalPost(NULL, $edit, t('Save'));
$match = array();
// Get comment ID
- preg_match('/#comment-([^"]+)/', $this->getURL(), $match);
+ preg_match('/#comment-([0-9]+)/', $this->getURL(), $match);
// Get comment.
if ($contact !== TRUE) { // If true then attempting to find error message.