...since we do that for regex patterns already.
It doesn't work for IMAP server-side searches.
!: modified feature, -: deleted feature, +: new feature
hg tip:
+ + lower case patterns for string searches perform case-insensitive
+ search as regex patterns do (except IMAP)
+ $ssl_verify_dates controls whether mutt checks the validity period of
SSL certificates
+ $ssl_verify_hostname controls whether mutt will accept certificates whose
</para>
<para>
-Please note that string search is an exact case-sensitive search
-while a regular expression search with only lower-case letters performs
-a case-insensitive search.
+As for regular expressions, a lower case string search pattern makes
+Mutt perform a case-insensitive search except for IMAP (because for IMAP
+Mutt performs server-side searches which don't support case-insensivity).
</para>
</sect1>
unsigned int alladdr : 1;
unsigned int stringmatch : 1;
unsigned int groupmatch : 1;
+ unsigned int ign_case : 1; /* ignore case for local stringmatch searches */
int min;
int max;
struct pattern_t *next;
if (pat->stringmatch)
{
pat->p.str = safe_strdup (buf.data);
+ pat->ign_case = mutt_which_case (buf.data) == REG_ICASE;
FREE (&buf.data);
}
else if (pat->groupmatch)
static int patmatch (const pattern_t* pat, const char* buf)
{
if (pat->stringmatch)
- return !strstr (buf, pat->p.str);
+ return pat->ign_case ? !strcasestr (buf, pat->p.str) :
+ !strstr (buf, pat->p.str);
else if (pat->groupmatch)
return !mutt_group_match (pat->p.g, buf);
else