diff -ur slrn-0.9.7.4.orig/src/art_sort.c slrn-0.9.7.4/src/art_sort.c
--- slrn-0.9.7.4.orig/src/art_sort.c	Mon Mar 11 15:22:35 2002
+++ slrn-0.9.7.4/src/art_sort.c	Thu Mar 14 19:02:45 2002
@@ -526,7 +526,7 @@
 	       {
 		  Slrn_Header_Type *rjh = relatives[j].h;
 		  
-		  if (Slrn_New_Subject_Breaks_Threads
+		  if ((Slrn_New_Subject_Breaks_Threads & 1)
 		      && (rih->subject != NULL)
 		      && (rjh->subject != NULL)
 		      && (0 != _art_subject_cmp (rih->subject, rjh->subject)))
@@ -877,7 +877,7 @@
 	       {
 		  Slrn_Header_Type *child, *last_child, *rparent;
 		  
-		  if (Slrn_New_Subject_Breaks_Threads
+		  if ((Slrn_New_Subject_Breaks_Threads & 1)
 		      && (h->subject != NULL)
 		      && (ref->subject != NULL)
 		      && (0 != _art_subject_cmp (h->subject, ref->subject)))
@@ -921,8 +921,11 @@
    
    /* Now perform sort on subject to catch those that have fallen through the
     * cracks, i.e., no references */
-   slrn_message_now (_("Linking articles with identical subjects ..."));
-   link_same_subjects ();
+   if (!(Slrn_New_Subject_Breaks_Threads & 2))
+     {
+	slrn_message_now (_("Linking articles with identical subjects ..."));
+	link_same_subjects ();
+     }
    
    /* Now link up others as sisters */
    h = Slrn_First_Header;
