diff -r b7fa3d2db8f4 -r b6d70b04aa2d multimediacommscontroller/mmccfilesourcesink/src/mccfilevideo.cpp --- a/multimediacommscontroller/mmccfilesourcesink/src/mccfilevideo.cpp Fri Apr 23 23:37:24 2010 +0300 +++ b/multimediacommscontroller/mmccfilesourcesink/src/mccfilevideo.cpp Fri May 14 15:11:40 2010 +0300 @@ -402,11 +402,27 @@ { __FILESOURCE_CONTROLL( "CMccFileVideo::ReadFrameL, reading frame, NOT OK" ) CleanupStack::PopAndDestroy( mediaBuffer ); + if( !iSendReadFrameFailEvent ) + { + iReadFrameFailCount++; + if( iReadFrameFailCount >= KMccReadFrameFailCountMax ) + { + iSendReadFrameFailEvent = ETrue; + iSource.InvalidVideoFrame( ETrue ); + } + } } else { __FILESOURCE_CONTROLL_INT1( "CMccFileVideo::ReadFrameL, reading frame, OK, position", iPosition ) + + if( iSendReadFrameFailEvent ) + { + iSendReadFrameFailEvent = EFalse; + iReadFrameFailCount = 0; + iSource.InvalidVideoFrame( EFalse ); + } DoTimingCorrection( iPosition );