diff -r 0d28c1c5b6dd -r 2828b4d142c0 phonebookengines/contactsmodel/cntplsql/src/cpplcommaddrtable.cpp --- a/phonebookengines/contactsmodel/cntplsql/src/cpplcommaddrtable.cpp Tue Apr 27 16:23:35 2010 +0300 +++ b/phonebookengines/contactsmodel/cntplsql/src/cpplcommaddrtable.cpp Tue May 11 16:00:21 2010 +0300 @@ -817,15 +817,22 @@ User::LeaveIfError(TLex(extValString).Val(storedUpperDigits)); TInt32 stored = storedUpperDigits; - while ( (number != 0) && (stored != 0) && - (number % 10 == 0 || stored % 10 == 0) ) + TBool nonZeroInStoredFound = EFalse; + TBool nonZeroInNumberFound = EFalse; + while ((number != 0) && (stored != 0)) { + nonZeroInNumberFound |= (number % 10 != 0); + nonZeroInStoredFound |= (stored % 10 != 0); + if (nonZeroInStoredFound && nonZeroInNumberFound) + { + break; + } number /= 10; stored /= 10; } - if ( (phoneDigits.iUpperDigits == 0) || (storedUpperDigits == 0) || - (number == stored) ) + if ((phoneDigits.iUpperDigits == 0) || (storedUpperDigits == 0) || + (number == stored)) { phoneMatchArray->AddL(stmnt.ColumnInt(KContactIdIdx)); }