--- a/realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileServerCore.cpp Wed Aug 18 10:07:48 2010 +0300
+++ b/realtimenetprots/sipfw/ProfileAgent/Server/Src/SipProfileServerCore.cpp Thu Sep 02 20:47:18 2010 +0300
@@ -396,7 +396,14 @@
{
return EFalse;
}
-
+
+ if((aError != KErrNone) && item->HasQueuedUpdate())
+ {
+ PROFILE_DEBUG4("ProfileServerCore::ProceedRegistration HasQueuedUpdate, err",
+ item->HasQueuedUpdate(), aError)
+ return EFalse;
+ }
+
if ( ShouldChangeIap(item->UsedProfile(), aError) &&
!item->SnapRetryCountReached() )
{
@@ -1546,6 +1553,7 @@
if (index != KErrNotFound)
{
iObservers.Remove(index);
+ iObservers.Compress();
}
for (TInt i = 0; i < iProfileCache.Count(); i ++)
@@ -1926,6 +1934,7 @@
if (index >= 0)
{
iProfileCache.Remove(index);
+ iProfileCache.Compress();
}
}
@@ -1942,7 +1951,9 @@
{
CSipAlrMigrationController* unused = iMigrationControllers[i];
iMigrationControllers.Remove(i);
+ iMigrationControllers.Compress();
delete unused;
+ unused = NULL;
}
}
}