messagingapp/msgutils/unieditorutils/unieditorplugins/unieditormmsplugin/src/unieditormmsplugin_p.cpp
changeset 27 e4592d119491
parent 25 84d9eb65b26f
child 47 5b14749788d7
--- a/messagingapp/msgutils/unieditorutils/unieditorplugins/unieditormmsplugin/src/unieditormmsplugin_p.cpp	Mon May 03 12:29:07 2010 +0300
+++ b/messagingapp/msgutils/unieditorutils/unieditorplugins/unieditormmsplugin/src/unieditormmsplugin_p.cpp	Fri May 14 15:49:35 2010 +0300
@@ -89,10 +89,18 @@
     delete iUniDataModel;
     ifsSession.Close();
 
-    delete iMmsMtm;
+    if(iMmsMtm)
+    {
+        delete iMmsMtm;
+    }
+
     delete iMtmRegistry;
     delete iDataModelPluginLoader;
-    delete iSession;
+
+    if(iSession)
+    {
+        delete iSession;
+    }
 }
 
 // -----------------------------------------------------------------------------
@@ -102,7 +110,7 @@
 //
 CUniEditorMmsPluginPrivate::CUniEditorMmsPluginPrivate( )
 {
-    iSession = CMsvSession::OpenSyncL(*this);
+    TRAP_IGNORE(iSession = CMsvSession::OpenSyncL(*this));
 }
 
 // -----------------------------------------------------------------------------
@@ -570,7 +578,7 @@
 //
 CMmsClientMtm* CUniEditorMmsPluginPrivate::MmsMtmL()
 {
-    if ( !iMmsMtm )
+    if ( !iMmsMtm && iSession )
     {
         if ( !iMtmRegistry )
         {            
@@ -782,10 +790,13 @@
 //
 void CUniEditorMmsPluginPrivate::deleteDraftsEntryL( TMsvId aId )
 {
-    CMsvEntry* pEntry = iSession->GetEntryL(KMsvDraftEntryIdValue);
-    CleanupStack::PushL(pEntry);
-    pEntry->DeleteL( aId );
-    CleanupStack::PopAndDestroy(pEntry);
+    if(iSession)
+    {
+        CMsvEntry* pEntry = iSession->GetEntryL(KMsvDraftEntryIdValue);
+        CleanupStack::PushL(pEntry);
+        pEntry->DeleteL( aId );
+        CleanupStack::PopAndDestroy(pEntry);    
+    }
 }