--- a/kerneltest/e32test/resourceman/d_rescontrolcli.cpp Fri Aug 06 16:34:38 2010 +0100
+++ b/kerneltest/e32test/resourceman/d_rescontrolcli.cpp Thu Aug 12 11:55:14 2010 +0100
@@ -283,12 +283,6 @@
{
if(iDfcQ)
iDfcQ->Destroy();
- if(iStaticRes)
- delete iStaticRes;
- if(iStaticResArray[0])
- delete iStaticResArray[0];
- if(iStaticResArray[2])
- delete iStaticResArray[2];
}
/** Entry point for this driver */
@@ -319,7 +313,7 @@
return NULL;
}
//Allocating memory earlier so that during failure conditions can cleanup easily
- p->iStaticRes = new DLaterRegisterStaticResource();
+ p->iStaticRes = new DLaterRegisterStaticResource(); // it will be registered, and later destroyed by the ResourceManager
if(!p->iStaticRes)
{
delete p->iClient.pName;
@@ -327,7 +321,7 @@
p->AsyncDelete();
return NULL;
}
- p->iStaticResArray[0] = new DLaterRegisterStaticResource1();
+ p->iStaticResArray[0] = new DLaterRegisterStaticResource1(); // it will be registered, and later destroyed by the ResourceManager
if(!p->iStaticResArray[0])
{
delete p->iStaticRes;
@@ -1337,7 +1331,7 @@
TInt r = PowerResourceManager::CancelNotification(iClient.iClientId, aResId, *ptr);
if(r == KErrCancel)
{
- delete ptr;
+ ptr->AsyncDelete();
if(iPostBootNotiCount == EXPECTED_POST_NOTI_COUNT)
{
r = PowerResourceManager::DeRegisterClient(DTestResManLddFactory::iClient.iClientId);