--- a/lafagnosticuifoundation/cone/src/CoeEnvExtra.cpp Mon May 03 12:45:33 2010 +0300
+++ b/lafagnosticuifoundation/cone/src/CoeEnvExtra.cpp Wed Jun 23 05:40:10 2010 +0800
@@ -169,11 +169,13 @@
void CCoeEnvExtra::AddObserverL(RArray<TAny*>& aArrayOfObservers, TAny* aObserver)
{
__ASSERT_ALWAYS(aObserver!=NULL, Panic(ECoePanicIllegalNullParameter3));
+ CleanupClosePushL(aArrayOfObservers);
for (TInt i=aArrayOfObservers.Count()-1; i>=0; --i)
{
__ASSERT_ALWAYS(aArrayOfObservers[i]!=aObserver, Panic(ECoePanicFocusObserverHasAlreadyBeenAdded));
}
User::LeaveIfError(aArrayOfObservers.Append(aObserver));
+ CleanupStack::Pop(&aArrayOfObservers);
}
void CCoeEnvExtra::RemoveObserver(RArray<TAny*>& aArrayOfObservers, const TAny* aObserver)