diff -r 02ba3f1733c6 -r 2b4ea9893b66 supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplstartstate.cpp --- a/supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplstartstate.cpp Thu Aug 19 10:20:18 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver2/src/epos_comasuplstartstate.cpp Tue Aug 31 15:37:04 2010 +0300 @@ -89,7 +89,8 @@ iTrace->Trace(_L("COMASuplStartState::~COMASuplStartState..."), KTraceFileName, __LINE__); delete iLocationIDRequestor; - iTrace->Trace(_L("Deleted iLocationIDRequestor..."), KTraceFileName, __LINE__); + if(iTrace) + iTrace->Trace(_L("Deleted iLocationIDRequestor..."), KTraceFileName, __LINE__); if(iPosRequestor) { @@ -98,15 +99,19 @@ else { delete iSETCapabilities ; - iTrace->Trace(_L("Deleted iSETCapabilities ..."), KTraceFileName, __LINE__); + if(iTrace) + iTrace->Trace(_L("Deleted iSETCapabilities ..."), KTraceFileName, __LINE__); } delete iAllowedCapabilities; - iTrace->Trace(_L("Deleted iAllowedCapabilities..."), KTraceFileName, __LINE__); + + if(iTrace) + iTrace->Trace(_L("Deleted iAllowedCapabilities..."), KTraceFileName, __LINE__); if(iLocationId) { - iTrace->Trace(_L("Deleted iLocationId..."), KTraceFileName, __LINE__); + if(iTrace) + iTrace->Trace(_L("Deleted iLocationId..."), KTraceFileName, __LINE__); delete iLocationId; iLocationId=NULL; } @@ -241,8 +246,8 @@ TBool tia801, rrlp, rrc; posProtocol.GetPosProtocol(tia801, rrlp, rrc); posProtocol2.SetPosProtocol(tia801, rrlp, rrc); - - iSETCapabilities2->SetSETCapabilities(posTechnology2, prefMethod2, posProtocol2); + if(iSETCapabilities2) + iSETCapabilities2->SetSETCapabilities(posTechnology2, prefMethod2, posProtocol2); } OMASuplStart->SetMessageBase(aSuplVersion,aSessionId); @@ -286,9 +291,10 @@ // Set SET Capability extn TOMAVer2SetCapExtn setCapsExtn; setCapsExtn.SetServiceCaps(serviceCaps); - iTrace->Trace(_L("SetVer2SetCapExtn"), KTraceFileName, __LINE__); + iTrace->Trace(_L("SetVer2SetCapExtn"), KTraceFileName, __LINE__); // Set SET Capabilities - iSETCapabilities2->SetVer2SetCapExtn(setCapsExtn); + if(iSETCapabilities2) + iSETCapabilities2->SetVer2SetCapExtn(setCapsExtn); //iLocationId ownership will be with SUPL start class OMASuplStart->SetSuplStart(iSETCapabilities2,iLocationId2,iECId); if(iECId) @@ -640,48 +646,53 @@ // (other items were commented in a header). // ----------------------------------------------------------------------------- // -void COMASuplStartState::LocationIDRequestCompletedL(COMASuplLocationId* aLocationId, - TInt aErrorCode) - { - iTrace->Trace(_L("COMASuplStartState::LocationIDRequestCompleted..."), KTraceFileName, __LINE__); - iGenerationStatus = EFalse; - if(aErrorCode!=KErrNone) - { - iTrace->Trace(_L("COMASuplStartState::LocationRequestFailed"), KTraceFileName, __LINE__); - if(iMsgStateObserver) - { - iMsgStateObserver->OperationCompleteL(aErrorCode); - return; - } - } - - COMASuplGSMCellInfo* cellInfo = COMASuplGSMCellInfo::NewL(); - COMASuplLocationId::TOMASuplStatus status; - TInt err = aLocationId->SuplLocationId(cellInfo, status); - - if(err == KErrNone) - { - TInt refMNC,refMCC,refCI,refLac; - cellInfo->SuplGSMCellInfo(refMNC,refMCC,refCI,refLac); - - COMASuplGSMCellInfo* cellInfoClone = COMASuplGSMCellInfo::NewL(); - cellInfoClone->SetSuplGSMCellInfo(refMNC,refMCC,refCI,refLac); - iLocationId2->SetSuplLocationId(cellInfoClone, status); +void COMASuplStartState::LocationIDRequestCompletedL( + COMASuplLocationId* aLocationId, TInt aErrorCode) + { + delete iLocationId; + iLocationId = NULL; + iLocationId = aLocationId; + iTrace->Trace(_L("COMASuplStartState::LocationIDRequestCompleted..."), + KTraceFileName, __LINE__); + iGenerationStatus = EFalse; + if (aErrorCode != KErrNone) + { + iTrace->Trace(_L("COMASuplStartState::LocationRequestFailed"), + KTraceFileName, __LINE__); + if (iMsgStateObserver) + { + iMsgStateObserver->OperationCompleteL(aErrorCode); + return; + } + } + + COMASuplGSMCellInfo* cellInfo = COMASuplGSMCellInfo::NewL(); + COMASuplLocationId::TOMASuplStatus status; + TInt err = aLocationId->SuplLocationId(cellInfo, status); - iLocationId = aLocationId; + if (err == KErrNone) + { + TInt refMNC, refMCC, refCI, refLac; + cellInfo->SuplGSMCellInfo(refMNC, refMCC, refCI, refLac); + + COMASuplGSMCellInfo* cellInfoClone = COMASuplGSMCellInfo::NewL(); + cellInfoClone->SetSuplGSMCellInfo(refMNC, refMCC, refCI, refLac); + iLocationId2->SetSuplLocationId(cellInfoClone, status); - if(iECId) - { - iTrace->Trace(_L("COMASuplStartState::LocationIDRequestCompletedL...Retrive E-CellId"), KTraceFileName, __LINE__); - iGenerationStatus = ETrue; - iLocationIDRequestor->GetECellID(); - } - else - { - GetAssistceDataFromPluginL(aErrorCode); - } - } - } + if (iECId) + { + iTrace->Trace( + _L("COMASuplStartState::LocationIDRequestCompletedL...Retrive E-CellId"), + KTraceFileName, __LINE__); + iGenerationStatus = ETrue; + iLocationIDRequestor->GetECellID(); + } + else + { + GetAssistceDataFromPluginL(aErrorCode); + } + } + } // ----------------------------------------------------------------------------- // COMASuplStartState::LocationECellIdRequestCompletedL