diff -r 4707a0db12f6 -r adb51f74b890 videoplayerapp/videoplayerengine/src/mpxvideoplayerappuiengine.cpp --- a/videoplayerapp/videoplayerengine/src/mpxvideoplayerappuiengine.cpp Mon Sep 20 18:25:37 2010 +0300 +++ b/videoplayerapp/videoplayerengine/src/mpxvideoplayerappuiengine.cpp Tue Oct 05 09:26:49 2010 +0300 @@ -15,7 +15,7 @@ * */ -// Version : %version: 12 % +// Version : %version: ou1cpsw#14 % @@ -750,26 +750,40 @@ // TInt CMpxVideoPlayerAppUiEngine::ReplayAfterPriorTermination(const TDesC& aFileName) { - MPX_DEBUG(_L("CMpxVideoPlayerAppUiEngine::ReplayAfterPriorTermination()")); + MPX_DEBUG(_L("CMpxVideoPlayerAppUiEngine::ReplayAfterPriorTermination()")); + + TInt error = KErrNone; - ReadActivityData(); - TMPXItemId mpxItemId(iLastPlayedItemId); - - TInt error = KErrNone; + RFile file; + RFs fs; + TInt fileError = fs.Connect(); + if ( fileError == KErrNone ) + { + fileError = file.Open( fs, aFileName, EFileRead | EFileShareReadersOrWriters ); - MPX_TRAP( error, - CMPXMedia* media = CMPXMedia::NewL(); - CleanupStack::PushL(media); - - media->SetTObjectValueL(KMPXMediaGeneralType, EMPXItem ); - media->SetTObjectValueL( KMPXMediaGeneralId, mpxItemId ); - media->SetTextValueL( KMPXMediaGeneralTitle, aFileName ); - media->SetTextValueL( KMPXMediaGeneralUri, aFileName ); - - OpenMediaL( *media ); - - CleanupStack::PopAndDestroy( media ); - ); + if ( fileError == KErrNone && file.SubSessionHandle() ) + { + file.Close(); + + ReadActivityData(); + TMPXItemId mpxItemId(iLastPlayedItemId); + + MPX_TRAP( error, + CMPXMedia* media = CMPXMedia::NewL(); + CleanupStack::PushL(media); + + media->SetTObjectValueL(KMPXMediaGeneralType, EMPXItem ); + media->SetTObjectValueL( KMPXMediaGeneralId, mpxItemId ); + media->SetTextValueL( KMPXMediaGeneralTitle, aFileName ); + media->SetTextValueL( KMPXMediaGeneralUri, aFileName ); + + OpenMediaL( *media ); + + CleanupStack::PopAndDestroy( media ); + ); + } + fs.Close(); + } return error; }