--- a/omadrm/drmplugins/drmromtm/ui/src/RoMtmUi.cpp Thu Jul 15 18:57:30 2010 +0300
+++ b/omadrm/drmplugins/drmromtm/ui/src/RoMtmUi.cpp Thu Aug 19 10:12:10 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -52,6 +52,8 @@
#include <RoMtmUi.rsg> // test
#include "drmmsgwatcherobserver.h"
+#include "cleanupresetanddestroy.h"
+
// EXTERNAL DATA STRUCTURES
// EXTERNAL FUNCTION PROTOTYPES
// CONSTANTS
@@ -566,7 +568,7 @@
CRichText& body = BaseMtm().Body();
TPtrC ptr16( body.Read(0) );
//const TUid KUidDRMUI = { 0x101f85c7 };
- CDrmMsgWatcherObserver* operation = NULL;
+ CMsvOperation* operation( NULL );
if ( iType == ERoapTrigger || iType == ERoapTriggerRoAcquisition )
{
@@ -580,36 +582,39 @@
ptr.Append(ptr16.Right(ptr16.Length()-4));
show = ShowQueryL(ptr);
+
if (!show)
{
- CleanupStack::PopAndDestroy(filename);
- return CompletedOperationL( aStatus );
+ operation = CompletedOperationL( aStatus );
+ }
+ else
+ {
+ operation = CDrmMsgWatcherObserver::NewL(
+ Session(),
+ CActive::EPriorityStandard,
+ aStatus,
+ Type(),
+ ptr,
+ type );
}
- operation = CDrmMsgWatcherObserver::NewL(
- Session(),
- CActive::EPriorityStandard,
- aStatus,
- Type(),
- ptr,
- type );
+ CleanupStack::PopAndDestroy(filename);
}
else
{
-
CAiwGenericParamList* paramList = CAiwGenericParamList::NewLC();
TAiwVariant variantObject( ptr16 );
TAiwGenericParam param( EGenericParamFile, variantObject );
paramList->AppendL( param );
- operation = CDrmMsgWatcherObserver::NewL(
- Session(),
- CActive::EPriorityStandard,
- aStatus,
- Type(),
- paramList );
+ operation = CDrmMsgWatcherObserver::NewL(
+ Session(),
+ CActive::EPriorityStandard,
+ aStatus,
+ Type(),
+ paramList );
- CleanupStack::PopAndDestroy( paramList ); // paramList
+ CleanupStack::PopAndDestroy( paramList );
}
return operation;
@@ -765,9 +770,9 @@
CleanupStack::PushL(buf);
roap = Roap::CRoapEng::NewL();
CleanupStack::PushL(roap);
+ CleanupResetAndDestroyPushL(array);
roap->SetTriggerL(ptr,NULL,type,status,op,array);
- array.ResetAndDestroy();
- array.Close();
+ CleanupStack::PopAndDestroy(&array);
CleanupStack::PopAndDestroy(roap);
CleanupStack::PopAndDestroy(buf);