diff -r 02ba3f1733c6 -r 2b4ea9893b66 supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplstartstate.cpp --- a/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplstartstate.cpp Thu Aug 19 10:20:18 2010 +0300 +++ b/supl/locationomasuplprotocolhandler/protocolhandlerver1/src/epos_comasuplstartstate.cpp Tue Aug 31 15:37:04 2010 +0300 @@ -149,23 +149,24 @@ // TInt COMASuplStartState::GenerateMessageL() { - iTrace->Trace(_L("Start of COMASuplStartState::GenerateMessage"), KTraceFileName, __LINE__); - //if no cell stale cell id is available, retrieve current cell id - if(!iIsStaleCellId) - { - iTrace->Trace(_L("COMASuplStartState::GenerateMessage stale cell id false"), KTraceFileName, __LINE__); - iLocationIDRequestor->GetLocationID(); - iTrace->Trace(_L("COMASuplStartState::GenerateMessage called get location id"), KTraceFileName, __LINE__); - } - else // dont retrieve current cell id as cell id was already provided - { - iGenerationStatus = EFalse; - iECId = EFalse; - iTrace->Trace(_L("COMASuplStartState::GenerateMessage stale cell id true"), KTraceFileName, __LINE__); - GetAssistceDataFromPluginL(KErrNone); - } - - return KErrNone; + + iTrace->Trace(_L("Start of COMASuplStartState::GenerateMessage"), KTraceFileName, __LINE__); + //if no cell stale cell id is available, retrieve current cell id + if(!iIsStaleCellId) + { + iTrace->Trace(_L("COMASuplStartState::GenerateMessage stale cell id false"), KTraceFileName, __LINE__); + iLocationIDRequestor->GetLocationID(); + iTrace->Trace(_L("COMASuplStartState::GenerateMessage called get location id"), KTraceFileName, __LINE__); + } + else // dont retrieve current cell id as cell id was already provided + { + iGenerationStatus = EFalse; + iECId = EFalse; + iTrace->Trace(_L("COMASuplStartState::GenerateMessage stale cell id true"), KTraceFileName, __LINE__); + GetAssistceDataFromPluginL(KErrNone); + } + + return KErrNone; } // ----------------------------------------------------------------------------- @@ -521,6 +522,9 @@ 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) @@ -532,8 +536,6 @@ return; } } - - iLocationId = aLocationId; if(iECId) { @@ -1010,7 +1012,15 @@ aCurrentCellId.iMCC = lRefMCC; aCurrentCellId.iLac = lRefLAC; } -} +} + +// ----------------------------------------------------------------------------- +// COMASuplStartState::SetStaleCellIdToUse +// Set stale cell id. +// +// (other items were commented in a header). +// ----------------------------------------------------------------------------- +// void COMASuplStartState::SetStaleCellIdToUse(COMASuplLocationId* aLocationId) { if(iLocationId)