diff -r f2a9f5a3b8ba -r f8de2c99bcde omadmadapters/nsmldminternet/src/NSmlWLanAdapter.cpp --- a/omadmadapters/nsmldminternet/src/NSmlWLanAdapter.cpp Fri Sep 17 08:27:39 2010 +0300 +++ b/omadmadapters/nsmldminternet/src/NSmlWLanAdapter.cpp Mon Oct 04 00:06:35 2010 +0300 @@ -1352,7 +1352,16 @@ "CNSmlWLanAdapter::AddLeafObject - Certificate buffer does not exist. Create it."); // The certificate buffer does not exist. Create a new one EapCertificateEntry *entry = new (ELeave) EapCertificateEntry; - iEAPBuffer[eapIndex]->iEAPSettings->iCertificates.Append(entry); + TRAPD(err, iEAPBuffer[eapIndex]->iEAPSettings->iCertificates.AppendL(entry)); + if(err != KErrNone) + { + delete entry; + DBG_ARGS(_S16( + "CNSmlWLanAdapter::AddLeafObjectL - ErrorCode <%D>"), + err); + iCallBack->SetStatusL(aStatusRef, CSmlDmAdapter::EError); + return; + } iEAPBuffer[eapIndex]->iEAPSettings->iCertificatesPresent = ETrue; certIndex @@ -3278,7 +3287,17 @@ delete eapLuidBuf; EapCertificateEntry *entry = new (ELeave) EapCertificateEntry; - iEAPBuffer[index]->iEAPSettings->iCertificates.Append(entry); + TRAPD(err, iEAPBuffer[index]->iEAPSettings->iCertificates.AppendL(entry)); + if(err != KErrNone) + { + delete entry; + DBG_ARGS(_S16( + "CNSmlWLanAdapter::AddLeafObjectL - ErrorCode <%D>"), + err); + iCallBack->SetStatusL(aStatusRef, CSmlDmAdapter::EError); + return; + } + iEAPBuffer[index]->iEAPSettings->iCertificatesPresent = ETrue; iEAPBuffer[index]->iStatusRefArray.AppendL(aStatusRef);