diff -r 34879f5cfc63 -r 2666d9724c76 phonebookui/Phonebook2/spbcontentprovider/src/spbphonenumberparser.cpp --- a/phonebookui/Phonebook2/spbcontentprovider/src/spbphonenumberparser.cpp Mon Jun 21 15:24:27 2010 +0300 +++ b/phonebookui/Phonebook2/spbcontentprovider/src/spbphonenumberparser.cpp Thu Jul 15 18:22:55 2010 +0300 @@ -157,7 +157,6 @@ //default number found number.CreateL( textData->Text() ); hasDefaultNumberField = ETrue; - break; } const TPtrC phoneNumber( textData->Text() ); // we need count phonenumbers same way how this is implemented in CCA @@ -180,12 +179,17 @@ { number.CreateL( (*phoneNumberArray)[0] ); } - + CleanupStack::PopAndDestroy( phoneNumberArray ); CleanupStack::PopAndDestroy( attribute ); - - // no number was found - if( numberCount > 1 ) + + if( hasDefaultNumberField || numberCount <= 1 ) + { + // inform the observer + iContent.PhoneNumberUpdatedL( + number, CSpbContentProvider::ETypePhoneNumber ); + } + else { // contact has multiple numbers and no default TBuf<12> count; @@ -193,13 +197,7 @@ iContent.PhoneNumberUpdatedL( count, CSpbContentProvider::ETypePhoneNumberMultiple ); } - else - { - // inform the observer - iContent.PhoneNumberUpdatedL( - number, CSpbContentProvider::ETypePhoneNumber ); - } - + number.Close(); }