--- spam/modules/spam_comment.inc.OLD	2009-02-13 17:36:05.000000000 +0100
+++ spam/modules/spam_comment.inc	2009-02-18 14:07:49.000000000 +0100
@@ -179,9 +179,10 @@ function comment_spamapi($op, $arg1 = NU
       $items = array();
       $items['admin/content/comment/list/spam'] = array(
         'title' => t('Spam'),
-        'callback' => 'spam_comment_admin',
-        'callback arguments' => array('spam'),
-        'access' => user_access('administer spam'),
+        'page callback' => 'spam_comment_admin',
+        'access arguments' => array('administer spam'),
+        'file' => 'comment.admin.inc',
+        'file path' => drupal_get_path('module', 'comment'),
         'type' => MENU_LOCAL_TASK,
       );
       return $items;
@@ -327,27 +328,26 @@ function spam_comment_admin_overview(&$f
     theme('table_select_header_cell'),
     array('data' => t('Subject'), 'field' => 'subject'),
     array('data' => t('Author'), 'field' => 'name'),
+    array('data' => t('Posted in'), 'field' => 'node_title'),
     array('data' => t('Time'), 'field' => 'timestamp', 'sort' => 'desc'),
     array('data' => t('Operations'))
   ));
-  $result = pager_query('SELECT c.subject, c.nid, c.cid, c.comment, c.timestamp, c.status, c.name, c.homepage, u.name AS registered_name, u.uid FROM {comments} c INNER JOIN {users} u ON u.uid = c.uid WHERE c.status = %d'. tablesort_sql($form['header']['#value']), 50, 0, NULL, SPAM_COMMENT);
+  $result = pager_query('SELECT c.subject, c.nid, c.cid, c.comment, c.timestamp, c.status, c.name, c.homepage, u.name AS registered_name, u.uid, n.title as node_title FROM {comments} c INNER JOIN {users} u ON u.uid = c.uid INNER JOIN {node} n ON n.nid = c.nid WHERE c.status = %d'. tablesort_sql($form['header']['#value']), 50, 0, NULL, SPAM_COMMENT);
 
   // build a table listing the appropriate comments
   $destination = drupal_get_destination();
   while ($comment = db_fetch_object($result)) {
     $comments[$comment->cid] = '';
     $comment->name = $comment->uid ? $comment->registered_name : $comment->name;
-    $form['subject'][$comment->cid] = array('#value' => /* TODO
-   Please manually fix the parameters on the l() or url() function on the next line.
-   Typically, this was not changed because of a function call inside an array call like
-   array('title' => t('View user profile.')).*/
-l($comment->subject, 'node/'. $comment->nid, array('title' => truncate_utf8($comment->comment, 128)), NULL, 'comment-'. $comment->cid));
+    $form['subject'][$comment->cid] = array('#value' => l($comment->subject, 'node/'. $comment->nid, array('attributes' => array('title' => truncate_utf8($comment->comment, 128)), 'fragment' => 'comment-'. $comment->cid)));
     $form['username'][$comment->cid] = array('#value' => theme('username', $comment));
+    $form['node_title'][$comment->cid] = array('#value' => l($comment->node_title, 'node/'. $comment->nid));
     $form['timestamp'][$comment->cid] = array('#value' => format_date($comment->timestamp, 'small'));
     $form['operations'][$comment->cid] = array('#value' => l(t('edit'), 'comment/edit/'. $comment->cid, array('query' => $destination)));
   }
   $form['comments'] = array('#type' => 'checkboxes', '#options' => $comments);
   $form['pager'] = array('#value' => theme('pager', NULL, 50, 0));
+
   return $form;
 }
 
@@ -372,7 +372,7 @@ function spam_comment_admin_overview_sub
 /**
  * Re-use function from comment module.
  */
-function theme_spam_comment_admin_overview($form_state, $form) {
-  return (theme_comment_admin_overview($form));
+function theme_spam_comment_admin_overview($form) {
+  return theme('comment_admin_overview', $form);
 }
 
