locationrequestmgmt/networkrequesthandler/src/ngmessageswitch.cpp
branchRCL_3
changeset 52 29dbbeac905d
parent 0 9cfd9a3ee49c
child 54 0c2046328c85
--- a/locationrequestmgmt/networkrequesthandler/src/ngmessageswitch.cpp	Wed Jun 09 11:13:47 2010 +0300
+++ b/locationrequestmgmt/networkrequesthandler/src/ngmessageswitch.cpp	Thu Aug 19 11:17:26 2010 +0300
@@ -135,7 +135,12 @@
 void CNGMessageSendBuffer::BufferData(TLbsNetInternalMsgBase* aData)
 	{	
 	// Add the data to the buffer
-	iBuffer.Append(aData);
+	TInt err = iBuffer.Append(aData);
+	if( err != KErrNone )
+		{
+		LBSLOG_ERR2(ELogP3, "CNGMessageSendBuffer::BufferData Append failed: %d", err);
+		delete aData;
+		}
 	}
 
 void CNGMessageSendBuffer::BufferEmergencyData(TLbsNetInternalMsgBase* aData)
@@ -510,8 +515,11 @@
 					// not being saved. Note we do enure that the mobiles position
 					// does get sent out to the network - its juts means that the callback
 					// that delivers the REF pos to the privacy system does not happen!
-					iRefPosBuffer.Append(item);
-					
+					TInt err = iRefPosBuffer.Append(item);
+					if( KErrNone != err )
+						{
+						LBSLOG_ERR(ELogP3, "CNGMessageSwitch::ProcessNetChannelMessage: iRefPosBuffer.Append Failed!!");
+						}
 					for (TInt i = 0; i < count; i++)
 						{
 						iObservers[i]->OnNetLocReferenceUpdate(msg->SessionId(), positionInfo);
@@ -533,7 +541,12 @@
 						item->iSessionId = msg->SessionId();
 					
 						Mem::Copy(&item->iPosInfo, &positionInfo, positionInfo.PositionClassSize());
-						iFNPPosBuffer.Append(item); // here, ownership passes to pointer array!
+						TInt err = iFNPPosBuffer.Append(item); // here, ownership passes to pointer array!
+						if( KErrNone != err )
+							{
+							delete item;
+							LBSLOG_ERR(ELogP3, "CNGMessageSwitch::ProcessNetChannelMessage: iFNPPosBuffer.Append Failed!!");
+							}
 						}
 					for (TInt i = 0; i < count; i++)
 						{