GitHub
Moderator
[SoftCSA] Connect SoftDecoder signals before start() to fix lost events
m_decoder_ready and the first video size event can fire synchronously
inside m_soft_decoder->start() when the CW is already available
(wait_timeout=0 default, or hasKeys() already true via cache). The
sigc signals were emitted before the connects on line 4516/4527
were established, so they were lost - onSoftDecoderReady never ran
and the IsSoftCSA skin icon never updated.
Move both connects (connectVideoEvent and m_decoder_ready) before the
start() call so the handlers are armed regardless of when the signals
fire.
(cherry picked from commit 4ade7ab81ec2b138007ca3d1928532351e1b62c9)
Continue reading...
m_decoder_ready and the first video size event can fire synchronously
inside m_soft_decoder->start() when the CW is already available
(wait_timeout=0 default, or hasKeys() already true via cache). The
sigc signals were emitted before the connects on line 4516/4527
were established, so they were lost - onSoftDecoderReady never ran
and the IsSoftCSA skin icon never updated.
Move both connects (connectVideoEvent and m_decoder_ready) before the
start() call so the handlers are armed regardless of when the signals
fire.
(cherry picked from commit 4ade7ab81ec2b138007ca3d1928532351e1b62c9)
Continue reading...