# HG changeset patch # User Shabe Razvi # Date 1284741160 -3600 # Node ID b72c2d56e34ae2bc07379e4b275551f7ca77903e # Parent 00671737faf248b3a6ce754d640ed6c6a163c4d5# Parent 6661d825985909590b1a349efa6049a61241579d Re-merge fixes for Bug 1993 and Bug 2121 diff -r 6661d8259859 -r b72c2d56e34a commondrm/drmutility/inc/drmutilitywmdrmwrapper.h --- a/commondrm/drmutility/inc/drmutilitywmdrmwrapper.h Thu Sep 02 15:51:27 2010 +0100 +++ b/commondrm/drmutility/inc/drmutilitywmdrmwrapper.h Fri Sep 17 17:32:40 2010 +0100 @@ -187,7 +187,9 @@ // Show the appropriate notes void ShowNoRightsNoteL( ContentAccess::CData& aContent, - TUint32 aReason ); + TUint32 aReason, + TInt aOperationId, + DRM::MDrmHandleErrorObserver* aObserver ); //*** DLA: diff -r 6661d8259859 -r b72c2d56e34a commondrm/drmutility/src/drmutilitywmdrmwrapper.cpp --- a/commondrm/drmutility/src/drmutilitywmdrmwrapper.cpp Thu Sep 02 15:51:27 2010 +0100 +++ b/commondrm/drmutility/src/drmutilitywmdrmwrapper.cpp Fri Sep 17 17:32:40 2010 +0100 @@ -276,7 +276,7 @@ if ( !value ) { - ShowNoRightsNoteL( aContent, reason ); + ShowNoRightsNoteL( aContent, reason, aOperationId, aObserver ); User::LeaveIfError( aContent.GetAttribute( ContentAccess::ECanPlay, value ) ); if ( value ) { @@ -500,7 +500,7 @@ { case DRM::EUHCheckRightsActionDefault: { - ShowNoRightsNoteL( aContent, aReason ); + ShowNoRightsNoteL( aContent, aReason, aOperationId, aObserver ); } break; @@ -558,8 +558,11 @@ // void DRM::CDrmUtilityWMDrmWrapper::ShowNoRightsNoteL( ContentAccess::CData& aContent, - TUint32 /*aReason*/ ) + TUint32 /*aReason*/, + TInt aOperationId, + DRM::MDrmHandleErrorObserver* aObserver ) { + TInt value; TRAPD( err, LoadDlaWrapperL() ); if ( !err ) { @@ -589,6 +592,14 @@ if ( !err && ( ret == EAknSoftkeyYes || ret == EAknSoftkeyOk ) && iWmDrmDlaSupportOn) { TRAP_IGNORE( DlaLicenseAcquisitionL( file ) ); + + // Ask the rights from CAF, same call for both ECanPlay and ECanView + aContent.GetAttribute( ContentAccess::ECanPlay, value ); + // call given HandleErrorObserver + if( value > 0 ) + { + aObserver->RightsAvailable( aOperationId, KErrNone ); + } } CleanupStack::PopAndDestroy( &file ); } diff -r 6661d8259859 -r b72c2d56e34a drm_plat/drm_common_api/tsrc/data/mmc/DRM/content.dcf diff -r 6661d8259859 -r b72c2d56e34a drm_plat/drm_rights_api/tsrc/data/c/content.dcf diff -r 6661d8259859 -r b72c2d56e34a drm_pub/oma_drm_caf_agent_api/tsrc/bc/DRM_CAF/data/content.dcf diff -r 6661d8259859 -r b72c2d56e34a omadrm/drmengine/roap/src/RoapEng.cpp --- a/omadrm/drmengine/roap/src/RoapEng.cpp Thu Sep 02 15:51:27 2010 +0100 +++ b/omadrm/drmengine/roap/src/RoapEng.cpp Fri Sep 17 17:32:40 2010 +0100 @@ -32,7 +32,7 @@ #ifndef __WINS__ #include #include -#include +#include #endif #include