vlc | branch: master | Steve Lhomme <[email protected]> | Mon May 9 22:08:47 2016 +0200| [19c661f019646af47049c070592952edc6b1df4e] | committer: Jean-Baptiste Kempf
chromecast: do the disconnect in the recv/send thread Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=19c661f019646af47049c070592952edc6b1df4e --- modules/stream_out/chromecast/chromecast_ctrl.cpp | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/modules/stream_out/chromecast/chromecast_ctrl.cpp b/modules/stream_out/chromecast/chromecast_ctrl.cpp index b6d7917..28fe8cf 100644 --- a/modules/stream_out/chromecast/chromecast_ctrl.cpp +++ b/modules/stream_out/chromecast/chromecast_ctrl.cpp @@ -142,8 +142,6 @@ intf_sys_t::~intf_sys_t() vlc_join(chromecastThread, NULL); - disconnectChromecast(); - vlc_interrupt_destroy( p_ctl_thread_interrupt ); vlc_cond_destroy(&loadCommandCond); @@ -831,9 +829,8 @@ void* intf_sys_t::ChromecastThread(void* p_data) if (p_sys->i_sock_fd < 0) { msg_Err( p_sys->p_module, "Could not connect the Chromecast" ); - vlc_mutex_lock(&p_sys->lock); + vlc_mutex_locker locker(&p_sys->lock); p_sys->setConnectionStatus(CHROMECAST_CONNECTION_DEAD); - vlc_mutex_unlock(&p_sys->lock); return NULL; } @@ -841,9 +838,8 @@ void* intf_sys_t::ChromecastThread(void* p_data) if (net_GetSockAddress(p_sys->i_sock_fd, psz_localIP, NULL)) { msg_Err( p_sys->p_module, "Cannot get local IP address" ); - vlc_mutex_lock(&p_sys->lock); - p_sys->setConnectionStatus(CHROMECAST_CONNECTION_DEAD); - vlc_mutex_unlock(&p_sys->lock); + vlc_mutex_locker locker(&p_sys->lock); + p_sys->disconnectChromecast(); return NULL; } @@ -858,6 +854,8 @@ void* intf_sys_t::ChromecastThread(void* p_data) while ( !vlc_killed() && p_sys->handleMessages() ); + p_sys->disconnectChromecast(); + return NULL; } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
