mmaudio_pub/drm_audio_player_api/tsrc/DRMAudioPlay/src/DRMAudioPlay_core.cpp
changeset 4 9d4397b300d1
parent 0 b8ed18f6c07b
child 5 b220a9341636
--- a/mmaudio_pub/drm_audio_player_api/tsrc/DRMAudioPlay/src/DRMAudioPlay_core.cpp	Thu Oct 07 23:44:30 2010 +0100
+++ b/mmaudio_pub/drm_audio_player_api/tsrc/DRMAudioPlay/src/DRMAudioPlay_core.cpp	Mon Oct 18 12:47:26 2010 +0100
@@ -655,6 +655,11 @@
 
 		TTimeIntervalMicroSeconds ExpectedDuration = TTimeIntervalMicroSeconds(I64INT(sndPlayer->GetDuration().Int64()) - I64INT(Position.Int64()));
 		iLogger->Log(_L("ExpectedDuration: %d") ,ExpectedDuration.Int64() );
+		
+		//if total duration less than the setposition value, set the expected duration to zero
+		//to handle test cases with setposition >   total duration.
+		if(ExpectedDuration.Int64() < 0)
+		    ExpectedDuration = TTimeIntervalMicroSeconds(I64INT(0));
 
 		if (  Abs(ExpectedDuration.Int64() - PerceivedDuration.Int64()) > ErrorRange.Int64() )
 			{	//Durations too different