Diffstat (limited to 'kmicromail/libmailwrapper/mailtypes.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | kmicromail/libmailwrapper/mailtypes.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/kmicromail/libmailwrapper/mailtypes.cpp b/kmicromail/libmailwrapper/mailtypes.cpp index 1a4ffd1..af3b9d0 100644 --- a/kmicromail/libmailwrapper/mailtypes.cpp +++ b/kmicromail/libmailwrapper/mailtypes.cpp @@ -33,20 +33,26 @@ static bool stringCompareRec( const QString& s1, const QString& s2 ) bool RecMail::isEqual( RecMail* r1 ) { if ( !stringCompareRec( isodate, r1->isodate ) ) { // qDebug("date *%s* *%s* ", isodate.latin1(), r1->isodate.latin1()); return false; } - if ( !stringCompareRec( from, r1->from ) ) { - //qDebug("from *%s* *%s* ", from.latin1(), r1->from.latin1()); + if ( !stringCompareRec( subject.left(40), r1->subject.left(40) ) ) { + //qDebug("sub *%s* *%s*", subject.latin1(), r1->subject.latin1()); return false; } - if ( !stringCompareRec( subject, r1->subject ) ) { - //qDebug("sub "); + + //qDebug("date *%s* *%s* ", isodate.latin1(), r1->isodate.latin1()); + if ( !stringCompareRec( from.left(40), r1->from.left(40)) ) { + if ( r1->from.find ( from ) < 0 ) { + if ( !stringCompareRec( from.simplifyWhiteSpace ().left(40), r1->from.simplifyWhiteSpace ().left(40)) ) { + //qDebug("from *%s* *%s* ", from.left(40).latin1(), r1->from.left(20).latin1()); return false; } + } + } return true; } void RecMail::copy_old(const RecMail&old) { subject = old.subject; |