Author: janderwald
Date: Fri Feb 12 11:12:46 2010
New Revision: 45585
URL:
http://svn.reactos.org/svn/reactos?rev=45585&view=rev
Log:
[PORTCLS]
- Reset play position when an audio stream is stopped
-- Fixes playback in looped mode (DirectSound) when a buffer is played&stopped more
than once
Modified:
trunk/reactos/drivers/wdm/audio/backpln/portcls/pin_wavecyclic.cpp
Modified: trunk/reactos/drivers/wdm/audio/backpln/portcls/pin_wavecyclic.cpp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/backpln/…
==============================================================================
--- trunk/reactos/drivers/wdm/audio/backpln/portcls/pin_wavecyclic.cpp [iso-8859-1]
(original)
+++ trunk/reactos/drivers/wdm/audio/backpln/portcls/pin_wavecyclic.cpp [iso-8859-1] Fri
Feb 12 11:12:46 2010
@@ -450,10 +450,14 @@
// FIXME
// complete with successful state
Pin->m_IrpQueue->CancelBuffers();
+ Pin->m_Position.PlayOffset = 0;
+ Pin->m_Position.WriteOffset = 0;
}
else if (Pin->m_State == KSSTATE_STOP)
{
Pin->m_IrpQueue->CancelBuffers();
+ Pin->m_Position.PlayOffset = 0;
+ Pin->m_Position.WriteOffset = 0;
}
// store result
Irp->IoStatus.Information = sizeof(KSSTATE);