mmfenh/advancedaudiocontroller/audiocontrollerpluginsvariant/AdvancedAudioController/Src/AdvancedAudioDecoder.cpp
--- a/mmfenh/advancedaudiocontroller/audiocontrollerpluginsvariant/AdvancedAudioController/Src/AdvancedAudioDecoder.cpp Fri Feb 19 23:19:48 2010 +0200
+++ b/mmfenh/advancedaudiocontroller/audiocontrollerpluginsvariant/AdvancedAudioController/Src/AdvancedAudioDecoder.cpp Fri Mar 12 15:45:41 2010 +0200
@@ -421,7 +421,9 @@
{
CMMFBuffer* refillBuffer = NULL;
// index is the next buffer, index-1 is current buffer, check 2 buffers back from the one being selected
- TInt checkBufIndex = iSharedBufferIndex-2;
+// ou1cimx1#205863
+ //TInt checkBufIndex = iSharedBufferIndex-2;
+ TInt checkBufIndex = iSharedBufferIndex- (iSharedBuffers->Count()-1) ;
if (checkBufIndex < 0)
{
@@ -430,11 +432,13 @@
if ((*iSharedBuffers)[checkBufIndex]->Status() == EBeingEmptied)
{
- if (iSharedBuffers->Count() <= 2)
+// ou1cimx1#205863
+/* if (iSharedBuffers->Count() <= 2)
{
DP1(_L("CAdvancedAudioDecoder::NextSharedBufferL leave, EBeingEmptied is used on Count[%d]"), iSharedBuffers->Count());
User::Leave(KErrAbort);
}
+*/
DP2(_L("CAdvancedAudioDecoder::NextSharedBufferL, index[%d] [%x] is EBeingEmptied"),
checkBufIndex, static_cast<CMMFDataBuffer*>((*iSharedBuffers)[checkBufIndex])->Data().Ptr() );
refillBuffer = (*iSharedBuffers)[checkBufIndex];
@@ -488,9 +492,9 @@
DP3(_L("CAdvancedAudioDecoder::HandleFillBufferL ptr[%x] iRenderEnabled[%d] Position[%d]"), static_cast<CMMFDataBuffer*>(iNextBuffer)->Data().Ptr(), iRenderEnabled, iNextBuffer->Position());
DP3(_L("CAdvancedAudioDecoder::HandleFillBufferL frm#[%d] d0[%x] dp[%x]"), static_cast<CMMFDataBuffer*>(iNextBuffer)->FrameNumber(), static_cast<CMMFDataBuffer*>(iNextBuffer)->Data().Ptr()[0],
static_cast<CMMFDataBuffer*>(iNextBuffer)->Data().Ptr()[iNextBuffer->Position()]);
-
- iBufferToFill->SetPosition(0);
- static_cast<CMMFDataBuffer*>(iBufferToFill)->Data().SetLength(0);
+// ou1cimx1#205863
+// iBufferToFill->SetPosition(0);
+// static_cast<CMMFDataBuffer*>(iBufferToFill)->Data().SetLength(0);
iBufferToFill->SetLastBuffer(EFalse);
TCodecProcessResult result;