messagingapp/msgappfw/server/src/ccsconversationcachehelper.cpp
changeset 34 84197e66a4bd
parent 31 ebfee66fde93
child 43 35b64624a9e7
--- a/messagingapp/msgappfw/server/src/ccsconversationcachehelper.cpp	Fri Jun 04 10:25:39 2010 +0100
+++ b/messagingapp/msgappfw/server/src/ccsconversationcachehelper.cpp	Fri Jun 11 13:35:48 2010 +0300
@@ -523,26 +523,23 @@
             }
 
             // Notify client of conversation change
-            if (!conversation->IsDeleted())
-            {
-                CCsClientConversation
-                        * clientConv =
-                                iConversationCache->CreateClientConvLC(conversation,
-                                                                       aConversationEntry);
-                iConversationCache->NotifyL(clientConv,
-                                            KConversationEventDelete);
-                CleanupStack::PopAndDestroy(clientConv);
-            }
-
+            CCsClientConversation
+                    * clientConv =
+                            iConversationCache->CreateClientConvLC(conversation,
+                                                                   aConversationEntry);
+            iConversationCache->NotifyL(clientConv,
+                                        KConversationEventDelete);
+            CleanupStack::PopAndDestroy(clientConv);
             // check if all entries are deleted then 
             // delete the conversation from cache
             if (conversation->GetEntryCount() == 0
                     && !conversation->IsSpecialConversation())
             {
-                conversationList->Remove(loop);
-                delete conversation;
-                //reset the counters
-                loop -= 1;
+            
+            conversationList->Remove(loop);
+            delete conversation;
+            //reset the counters
+            loop -= 1;
             }
 
             // Stop searching    
@@ -598,6 +595,9 @@
         }
 
     iConversationCache->NotifyL(clientConv, KConversationListEventNew);
+    // send the new conversation event as well, so that if there are nay listeners for the cv
+    // then they will get the notification.
+    iConversationCache->NotifyL(clientConv, KConversationEventNew);
     CleanupStack::PopAndDestroy(clientConv);
 
     CleanupStack::Pop(conversation);