diff --git a/modules/comment/comment.module b/modules/comment/comment.module
index 8e0c7d9..cb04875 100644
--- a/modules/comment/comment.module
+++ b/modules/comment/comment.module
@@ -265,6 +265,14 @@ function comment_menu() {
     'file' => 'comment.pages.inc',
     'weight' => 1,
   );
+  $items['comment/%/unapprove'] = array(
+    'title' => 'Unapprove',
+    'page callback' => 'comment_unapprove',
+    'page arguments' => array(1),
+    'access arguments' => array('administer comments'),
+    'file' => 'comment.pages.inc',
+    'weight' => 1,
+  );
   $items['comment/%/delete'] = array(
     'title' => 'Delete',
     'page callback' => 'comment_confirm_delete_page',
@@ -1050,6 +1058,14 @@ function comment_links($comment, $node) {
           'query' => array('token' => drupal_get_token("comment/$comment->cid/approve")),
         );
       }
+      else {
+        $links['comment-unapprove'] = array(
+          'title' => t('unapprove'),
+          'href' => "comment/$comment->cid/unapprove",
+          'html' => TRUE,
+          'query' => array('token' => drupal_get_token("comment/$comment->cid/unapprove")),
+        );
+      }
     }
     elseif (user_access('post comments')) {
       if (comment_access('edit', $comment)) {
diff --git a/modules/comment/comment.pages.inc b/modules/comment/comment.pages.inc
index 7e88bff..10da3d4 100644
--- a/modules/comment/comment.pages.inc
+++ b/modules/comment/comment.pages.inc
@@ -117,3 +117,22 @@ function comment_approve($cid) {
   }
   return MENU_NOT_FOUND;
 }
+/**
+ * Menu callback; unpublish specified comment.
+ *
+ * @param $cid
+ *   A comment identifier.
+ */
+function comment_unapprove($cid) {
+  if (!isset($_GET['token']) || !drupal_valid_token($_GET['token'], "comment/$cid/unapprove")) {
+    return MENU_ACCESS_DENIED;
+  }
+  if ($comment = comment_load($cid)) {
+    $comment->status = COMMENT_NOT_PUBLISHED;
+    comment_save($comment);
+
+    drupal_set_message(t('Comment unapproved.'));
+    drupal_goto('node/' . $comment->nid);
+  }
+  return MENU_NOT_FOUND;
+}
\ No newline at end of file
