diff -r 41a7f70b3818 -r 5266b1f337bd phoneengine/loghandling/src/cpelogevent.cpp --- a/phoneengine/loghandling/src/cpelogevent.cpp Tue Aug 31 15:14:29 2010 +0300 +++ b/phoneengine/loghandling/src/cpelogevent.cpp Wed Sep 01 12:30:10 2010 +0100 @@ -21,6 +21,7 @@ #include "cpeloginfo.h" #include "cpeloghandling.h" #include "cpeloghandlingcommand.h" +#include #include #include #include @@ -306,25 +307,25 @@ switch ( iLogInfo->PhoneNumberId() ) { case EPEMobileNumber: - subject.AppendNum( EPEUnknownNumber ); + subject.AppendNum( EPbkFieldIdPhoneNumberMobile ); break; case EPETelephoneNumber: - subject.AppendNum( EPEUnknownNumber ); + subject.AppendNum( EPbkFieldIdPhoneNumberGeneral ); break; case EPEPager: - subject.AppendNum( EPEUnknownNumber ); + subject.AppendNum( EPbkFieldIdPagerNumber ); break; case EPEFaxNumber: - subject.AppendNum( EPEUnknownNumber ); + subject.AppendNum( EPbkFieldIdFaxNumber ); break; case EPEAssistantNumber: - subject.AppendNum( EPEUnknownNumber); + subject.AppendNum( EPbkFieldIdAssistantNumber); break; case EPECarNumber: - subject.AppendNum( EPEUnknownNumber); + subject.AppendNum( EPbkFieldIdCarNumber); break; default: - subject.AppendNum( EPEUnknownNumber ); + subject.AppendNum( EPbkFieldIdNone ); break; } @@ -657,7 +658,12 @@ { if ( KNullDesC() != aLogInfo.Name() ) { - aEvent.SetRemoteParty( aLogInfo.Name() ); + // This if clause fixes ou1cimx1#320365 Wrong address shown in received log entry + if ( aLogInfo.EventType() != CPELogInfo::EPEVoIPEvent || + KNullDesC() == aEvent.RemoteParty() ) + { + aEvent.SetRemoteParty( aLogInfo.Name() ); + } } } @@ -669,18 +675,24 @@ void CPELogEvent::SetRemoteContact( CLogEvent& aEvent, const CPELogInfo& aLogInfo ) { - if ( KNullDesC() != aLogInfo.PhoneNumber() ) + if ( KNullDesC() != aLogInfo.PhoneNumber() ) { - aEvent.SetNumber( aLogInfo.PhoneNumber() ); + if ( aLogInfo.EventType() != CPELogInfo::EPEVoIPEvent || + ( KNullDesC() == aEvent.Number() && + KErrNotFound == iEvent->Data().Find( KLogsDataFldTag_URL ) ) ) + { + aEvent.SetNumber( aLogInfo.PhoneNumber() ); + } } - if ( KNullDesC() != aLogInfo.VoipAddress() ) + else if ( KNullDesC() != aLogInfo.VoipAddress() && + KNullDesC() == aEvent.Number()) { TRAPD( error, SetDataFieldL( KLogsDataFldTag_URL, aLogInfo.VoipAddress() ) ); if ( error ) { TEFLOGSTRING2( KTAERROR, - "LOG CPELogEvent::SetLogEvent()>SetDataFieldL(), error=%d", error ) + "LOG CPELogEvent::SetRemoteContact()>SetDataFieldL(), error=%d", error ) } } }