diff -r 59984e68247d -r 6abfb1094884 presencecache/presencecachesymbian/presencecacheserver2/src/presencecachebuddystore.cpp --- a/presencecache/presencecachesymbian/presencecacheserver2/src/presencecachebuddystore.cpp Thu Sep 09 16:37:32 2010 +0300 +++ b/presencecache/presencecachesymbian/presencecacheserver2/src/presencecachebuddystore.cpp Tue Sep 21 17:07:25 2010 +0300 @@ -30,10 +30,8 @@ CPresenceCacheServiceStore* aServiceStore, const TDesC& aIdentity) { - CPresenceCacheBuddyStore* self = new( ELeave ) CPresenceCacheBuddyStore( - aServiceStore); + CPresenceCacheBuddyStore* self =CPresenceCacheBuddyStore::NewL(aServiceStore,aIdentity); CleanupStack::PushL( self ); - self->ConstructL(aIdentity); return self; } @@ -45,8 +43,11 @@ CPresenceCacheServiceStore* aServiceStore, const TDesC& aIdentity) { - CPresenceCacheBuddyStore* self = NewLC(aServiceStore,aIdentity); - CleanupStack::Pop( self ); + CPresenceCacheBuddyStore* self = new( ELeave ) CPresenceCacheBuddyStore( + aServiceStore); + CleanupStack::PushL( self ); + self->ConstructL(aIdentity); + CleanupStack::Pop( self ); return self; } @@ -79,7 +80,8 @@ // void CPresenceCacheBuddyStore::ConstructL(const TDesC& aIdentity) { - iIdentity = aIdentity.AllocL(); + SetBuddyIdL(aIdentity); + } // --------------------------------------------------------------------------- @@ -151,6 +153,7 @@ delete iIdentity; iIdentity = NULL; iIdentity = aIdentity.AllocL(); + } // ---------------------------------------------------------------------------