Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

[dvdplayer] Fix synchronize timeout with non-flushed seeking. #944

Closed
wants to merge 1 commit into
from
Jump to file or symbol
Failed to load files and symbols.
+7 −1
Split
@@ -3040,10 +3040,16 @@ void CDVDPlayer::FlushBuffers(bool queued, double pts, bool accurate)
{
m_dvdPlayerAudio.SendMessage(new CDVDMsg(CDVDMsg::GENERAL_RESET));
m_dvdPlayerVideo.SendMessage(new CDVDMsg(CDVDMsg::GENERAL_RESET));
+ // TODO: Why the VIDEO_NO_SKIP message?
m_dvdPlayerVideo.SendMessage(new CDVDMsg(CDVDMsg::VIDEO_NOSKIP));
m_dvdPlayerSubtitle.SendMessage(new CDVDMsg(CDVDMsg::GENERAL_RESET));
m_dvdPlayerTeletext.SendMessage(new CDVDMsg(CDVDMsg::GENERAL_RESET));
- SynchronizePlayers(SYNCSOURCE_ALL);
+
+ CDVDMsgGeneralSynchronize* msg = new CDVDMsgGeneralSynchronize(100, SYNCSOURCE_ALL);
+ m_dvdPlayerAudio.SendMessage(msg->Acquire(), 1);
+ m_dvdPlayerVideo.SendMessage(msg->Acquire(), 1);
+ msg->Wait(&m_bStop, 0);
+ msg->Release();
}
else
{