Index: modules/comment/comment.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/comment/comment.module,v
retrieving revision 1.878
diff -u -p -r1.878 comment.module
--- modules/comment/comment.module	27 May 2010 12:29:39 -0000	1.878
+++ modules/comment/comment.module	1 Jun 2010 15:10:42 -0000
@@ -1323,25 +1323,19 @@ function comment_node_search_result($nod
 function comment_user_cancel($edit, $account, $method) {
   switch ($method) {
     case 'user_cancel_block_unpublish':
-      db_update('comment')
-        ->fields(array('status' => 0))
-        ->condition('uid', $account->uid)
-        ->execute();
-      db_update('node_comment_statistics')
-        ->fields(array('last_comment_uid' => 0))
-        ->condition('last_comment_uid', $account->uid)
-        ->execute();
+      $comments = comment_load_multiple(array(), array('cid' => $account->uid));
+      foreach ($comments as $comment) {
+        $comment->status = 0;
+        comment_save($comment);
+      }
       break;
 
     case 'user_cancel_reassign':
-      db_update('comment')
-        ->fields(array('uid' => 0))
-        ->condition('uid', $account->uid)
-        ->execute();
-      db_update('node_comment_statistics')
-        ->fields(array('last_comment_uid' => 0))
-        ->condition('last_comment_uid', $account->uid)
-        ->execute();
+      $comments = comment_load_multiple(array(), array('cid' => $account->uid));
+      foreach ($comments as $comment) {
+        $comment->uid = 0;
+        comment_save($comment);
+      }
       break;
   }
 }
