presencecache/presencecachesymbian/presencecacheserver2/src/presencecacheexpiry.cpp
changeset 81 640d30f4fb64
parent 40 b46a585f6909
--- a/presencecache/presencecachesymbian/presencecacheserver2/src/presencecacheexpiry.cpp	Fri Oct 08 11:42:51 2010 +0300
+++ b/presencecache/presencecachesymbian/presencecacheserver2/src/presencecacheexpiry.cpp	Fri Oct 15 12:24:46 2010 +0300
@@ -100,6 +100,7 @@
             iServer.iPresenceCache;
     
     RPointerArray<CPresenceCacheBuddyStore> buddyStores;
+    CleanupClosePushL(buddyStores);
     
     const TInt serviceCount(presenceCache.Count());
     for( TInt i = 0 ; i < serviceCount ; ++i )
@@ -112,6 +113,11 @@
         {
         NotifySubscribersL( *( buddyStores[i] ) );
         }
+    
+    // Close the buddyStores array and free all memory allocated to it.
+    // Doesn't delete the contained CPresenceCacheBuddyStor objects.
+    // Ownership of those remain in CPresenceCacheServiceStore.
+    CleanupStack::PopAndDestroy();   // calls buddyStores.Close()
     }
 
 //  End of File