* src/textview.c
use procheader_parse_header(), procheader_headername_equal()
removed memory leak in text_scan_header when freeing headers
+ * src/filter.c
+ changed the function to match names of headers
+ using procheader_headername_equal()
Scoring functions are implemented, an interface is needed
to configure that.
header = hlist->data;
if (!match1 &&
- !strcasecmp(header->name, filter->name1)) {
+ procheader_headername_equal(header->name,
+ filter->name1)) {
if (!filter->body1 ||
StrFind1(header->body, filter->body1))
match1 = TRUE;
}
if (!match2 &&
- !strcasecmp(header->name, filter->name2)) {
+ procheader_headername_equal(header->name,
+ filter->name2)) {
if (!filter->body2 ||
StrFind2(header->body, filter->body2))
match2 = TRUE;
for (; hlist != NULL; hlist = hlist->next) {
header = hlist->data;
- if (!strcasecmp(header->name, filter->name1))
+ if (procheader_headername_equal(header->name,
+ filter->name1))
if (!filter->body1 ||
StrFind1(header->body, filter->body1))
return TRUE;
if (filter->name2 &&
- !strcasecmp(header->name, filter->name2))
+ procheader_headername_equal(header->name,
+ filter->name2))
if (!filter->body2 ||
StrFind2(header->body, filter->body2))
return TRUE;
}
/*
- tests whether two headers are equal
+ tests whether two headers' names are equal
+ remove the trailing ':' or ' ' before comparing
*/
gboolean procheader_headername_equal(char * hdr1, char * hdr2)