diff -r f54bfd820e04 -r b5e99d8877c7 realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileCacheItem.cpp --- a/realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileCacheItem.cpp Thu Aug 19 10:16:25 2010 +0300 +++ b/realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileCacheItem.cpp Tue Aug 31 15:32:57 2010 +0300 @@ -366,6 +366,7 @@ if (index != KErrNotFound) { iObservers.Remove(index); + iObservers.Compress(); } RemoveFromPendingObservers(aObserver); @@ -402,6 +403,7 @@ if (index != KErrNotFound) { iUsers.Remove(index); + iUsers.Compress(); CheckProfileEnabledState(); } } @@ -1256,6 +1258,7 @@ if (index != KErrNotFound) { iObserversWaitedForPermission.Remove(index); + iObserversWaitedForPermission.Compress(); } } @@ -1416,3 +1419,14 @@ LatestProfile().ExtensionParameter(KBearerType , bearerId); return bearerId; } + +// ----------------------------------------------------------------------------- +// CSIPProfileCacheItem::HasQueuedUpdate +// This function will return true if profile updated and not yet processed +// false otherwise +// ----------------------------------------------------------------------------- +// +TBool CSIPProfileCacheItem::HasQueuedUpdate() const + { + return (iQueuedProfile != NULL); + }