Commit 372d71bd authored by Petri Hintukainen's avatar Petri Hintukainen Committed by Jean-Baptiste Kempf

bluray: factorize blurayReleaseVout()

Signed-off-by: default avatarJean-Baptiste Kempf <jb@videolan.org>
parent 00d3ae19
...@@ -270,6 +270,18 @@ static void FindMountPoint(char **file) ...@@ -270,6 +270,18 @@ static void FindMountPoint(char **file)
#endif #endif
} }
static void blurayReleaseVout(demux_t *p_demux)
{
demux_sys_t *p_sys = p_demux->p_sys;
if (p_sys->p_vout != NULL) {
var_DelCallback(p_sys->p_vout, "mouse-moved", onMouseEvent, p_demux);
var_DelCallback(p_sys->p_vout, "mouse-clicked", onMouseEvent, p_demux);
vlc_object_release(p_sys->p_vout);
p_sys->p_vout = NULL;
}
}
/***************************************************************************** /*****************************************************************************
* cache current playlist (title) information * cache current playlist (title) information
*****************************************************************************/ *****************************************************************************/
...@@ -486,11 +498,8 @@ static void blurayClose(vlc_object_t *object) ...@@ -486,11 +498,8 @@ static void blurayClose(vlc_object_t *object)
assert(p_sys->bluray); assert(p_sys->bluray);
bd_close(p_sys->bluray); bd_close(p_sys->bluray);
if (p_sys->p_vout != NULL) { blurayReleaseVout(p_demux);
var_DelCallback(p_sys->p_vout, "mouse-moved", onMouseEvent, p_demux);
var_DelCallback(p_sys->p_vout, "mouse-clicked", onMouseEvent, p_demux);
vlc_object_release(p_sys->p_vout);
}
if (p_sys->p_parser) if (p_sys->p_parser)
stream_Delete(p_sys->p_parser); stream_Delete(p_sys->p_parser);
if (p_sys->p_out != NULL) if (p_sys->p_out != NULL)
...@@ -784,12 +793,7 @@ static void blurayCloseOverlay(demux_t *p_demux, int plane) ...@@ -784,12 +793,7 @@ static void blurayCloseOverlay(demux_t *p_demux, int plane)
return; return;
/* All overlays have been closed */ /* All overlays have been closed */
if (p_sys->p_vout != NULL) { blurayReleaseVout(p_demux);
var_DelCallback(p_sys->p_vout, "mouse-moved", onMouseEvent, p_demux);
var_DelCallback(p_sys->p_vout, "mouse-clicked", onMouseEvent, p_demux);
vlc_object_release(p_sys->p_vout);
p_sys->p_vout = NULL;
}
} }
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment