diff -ru listhandler.old/listhandler.module listhandler/listhandler.module
--- listhandler.old/listhandler.module	2008-10-27 21:10:29.000000000 +0100
+++ listhandler/listhandler.module	2009-04-16 17:02:51.000000000 +0200
@@ -493,7 +493,7 @@
 function listhandler_find_parent($node, $header) {
 
   if ($node->threading) {
-    $parent = db_fetch_object(db_query("SELECT * FROM {listhandler} WHERE msgid = '<%s>'", $node->threading));
+    $parent = db_fetch_object(db_query("SELECT * FROM {listhandler} WHERE msgid = '<%s>' and mid = %d", $node->threading, $node->mid));
     // Debug
     // watchdog('listhandler', "Parent seek <pre>'". $node->threading ."\np.nid:".$parent->nid."\n p.cid".$parent->cid."\nSubject: ".$header->subject."'</pre>");
     if ($parent) { // parent (!) seen by listhandler on this site.
@@ -512,7 +512,7 @@
   else {
       // Could be a comment to a comment.
       // watchdog ('listhandler', 'Could be a comment to a comment');
-    $parent = db_fetch_object(db_query("SELECT * FROM {comments} c WHERE c.subject = '%s' ORDER BY cid DESC", $title));
+    $parent = db_fetch_object(db_query("SELECT c.* FROM {comments} c INNER JOIN {term_node} t ON t.nid=c.nid WHERE c.subject = '%s' and t.tid = %d ORDER BY c.cid DESC", $title, $node->tid));
     if ($parent) {
       return listhandler_parent_thread($node, $parent);
     }
