vlc/vlc-3.0 | branch: master | Thomas Guillem | Wed Mar 28
12:17:57 2018 +0200| [b8f3bc8269ff2f9b4f2b54ae73cc3b71734d1cbd] | committer:
Thomas Guillem
chromecast: demux: add deinit()
(cherry picked from commit a7ee0f82f96f6bc26941ceb42365474bc62abb27)
Signed-off-by: Thomas Guillem
> http://git.videolan.org/gitweb.cgi/vlc/vlc-3.0.git/?a=commit;h=b8f3bc8269ff2f9b4f2b54ae73cc3b71734d1cbd
---
modules/stream_out/chromecast/chromecast_demux.cpp | 18 +++---
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/modules/stream_out/chromecast/chromecast_demux.cpp
b/modules/stream_out/chromecast/chromecast_demux.cpp
index fdd61092d6..08485d13b7 100644
--- a/modules/stream_out/chromecast/chromecast_demux.cpp
+++ b/modules/stream_out/chromecast/chromecast_demux.cpp
@@ -141,6 +141,14 @@ struct demux_cc
resetTimes();
}
+void deinit()
+{
+assert(p_renderer);
+p_renderer->pf_set_meta( p_renderer->p_opaque, NULL );
+p_renderer->pf_set_on_paused_changed_cb( p_renderer->p_opaque,
+ NULL, NULL );
+}
+
void resetTimes()
{
m_start_time = m_last_time = -1;
@@ -162,11 +170,7 @@ struct demux_cc
~demux_cc()
{
if( p_renderer )
-{
-p_renderer->pf_set_meta( p_renderer->p_opaque, NULL );
-p_renderer->pf_set_on_paused_changed_cb( p_renderer->p_opaque,
- NULL, NULL );
-}
+deinit();
}
void resetDemuxEof()
@@ -414,14 +418,14 @@ struct demux_cc
case DEMUX_FILTER_ENABLE:
p_renderer = static_cast(
var_InheritAddress( p_demux, CC_SHARED_VAR_NAME ) );
+assert(p_renderer != NULL);
m_enabled = true;
init();
return VLC_SUCCESS;
case DEMUX_FILTER_DISABLE:
-p_renderer->pf_set_on_paused_changed_cb( p_renderer->p_opaque,
- NULL, NULL );
+deinit();
/* Seek back to last known position. Indeed we don't want to resume
* from the input position that can be more than 1 minutes forward
___
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits