[vlc-commits] access: bluray: fix BD-J background recursive lock
Francois Cartegnie
git at videolan.org
Tue Oct 30 18:12:33 CET 2018
vlc/vlc-3.0 | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Thu Oct 18 14:57:10 2018 +0200| [2d33086944f7ca64e47c2ccfe195c9a89d169b6e] | committer: Francois Cartegnie
access: bluray: fix BD-J background recursive lock
(cherry picked from commit 13ef07ed408f817a2610092172160cd7546ce829)
> http://git.videolan.org/gitweb.cgi/vlc/vlc-3.0.git/?a=commit;h=2d33086944f7ca64e47c2ccfe195c9a89d169b6e
---
modules/access/bluray.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/modules/access/bluray.c b/modules/access/bluray.c
index 38116ab9b6..33631a9c6f 100644
--- a/modules/access/bluray.c
+++ b/modules/access/bluray.c
@@ -448,13 +448,12 @@ static void blurayReleaseVout(demux_t *p_demux)
* BD-J background video
*****************************************************************************/
-static void startBackground(demux_t *p_demux)
+static es_out_id_t * blurayCreateBackgroundUnlocked(demux_t *p_demux)
{
demux_sys_t *p_sys = p_demux->p_sys;
- if (p_sys->p_dummy_video) {
- return;
- }
+ if (p_sys->p_dummy_video)
+ return p_sys->p_dummy_video;
msg_Info(p_demux, "Start background");
@@ -493,6 +492,7 @@ static void startBackground(demux_t *p_demux)
out:
es_format_Clean(&fmt);
+ return p_sys->p_dummy_video;
}
static void stopBackground(demux_t *p_demux)
@@ -2572,7 +2572,8 @@ static void blurayHandleOverlays(demux_t *p_demux, int nread)
/* Looks like there's no video stream playing.
Emit blank frame so that BD-J overlay can be drawn. */
- startBackground(p_demux);
+ if(blurayCreateBackgroundUnlocked(p_demux) != NULL)
+ p_sys->p_vout = input_GetVout(p_demux->p_input);
}
if (p_sys->p_vout != NULL) {
More information about the vlc-commits
mailing list