diff -pruN mutt-1.4.orig/doc/manual.sgml.head mutt-1.4/doc/manual.sgml.head --- mutt-1.4.orig/doc/manual.sgml.head Mon May 6 13:26:44 2002 +++ mutt-1.4/doc/manual.sgml.head Sat Jun 1 23:38:02 2002 @@ -1719,6 +1719,7 @@ messages: ~y EXPR messages which contain EXPR in the `X-Label' field ~z [MIN]-[MAX] messages with a size in the range MIN to MAX *) ~= duplicated messages (see $duplicate_threads) +~# broken threads (see $strict_threads) Where EXPR, USER, ID, and SUBJECT are diff -pruN mutt-1.4.orig/mutt.h mutt-1.4/mutt.h --- mutt-1.4.orig/mutt.h Thu Feb 28 09:24:13 2002 +++ mutt-1.4/mutt.h Sat Jun 1 23:38:02 2002 @@ -195,6 +195,7 @@ enum M_AND, M_OR, M_TO, + M_BROKEN, M_CC, M_COLLAPSED, M_SUBJECT, diff -pruN mutt-1.4.orig/pattern.c mutt-1.4/pattern.c --- mutt-1.4.orig/pattern.c Sat May 18 07:39:18 2002 +++ mutt-1.4/pattern.c Sat Jun 1 23:38:02 2002 @@ -91,6 +91,7 @@ Flags[] = { 'y', M_XLABEL, 0, eat_regexp }, { 'z', M_SIZE, 0, eat_range }, { '=', M_DUPLICATED, 0, NULL }, + { '#', M_BROKEN, 0, NULL }, { 0 } }; @@ -1053,6 +1054,8 @@ mutt_pattern_exec (struct pattern_t *pat return (pat->not ^ (h->env->x_label && regexec (pat->rx, h->env->x_label, 0, NULL, 0) == 0)); case M_DUPLICATED: return (pat->not ^ (h->thread && h->thread->duplicate_thread)); + case M_BROKEN: + return (pat->not ^ (h->thread && h->thread->fake_thread)); } mutt_error (_("error: unknown op %d (report this error)."), pat->op); return (-1); diff -pruN mutt-1.4.orig/PATCHES mutt-1.4/PATCHES --- mutt-1.4.orig/PATCHES Tue Apr 2 20:48:57 2002 +++ mutt-1.4/PATCHES Sat Jun 1 23:38:02 2002 @@ -1,0 +1 @@ +patch-1.4.0.cd.pattern_broken.1