Commit 3e92a084 authored by Rafaël Carré's avatar Rafaël Carré
Browse files

vout_ManageWrapper: reset display pool after we reset render

Fixes: #3899
parent 2b1c32f0
...@@ -82,7 +82,7 @@ VLC_API bool vout_IsDisplayFiltered(vout_display_t *); ...@@ -82,7 +82,7 @@ VLC_API bool vout_IsDisplayFiltered(vout_display_t *);
VLC_API picture_t * vout_FilterDisplay(vout_display_t *, picture_t *); VLC_API picture_t * vout_FilterDisplay(vout_display_t *, picture_t *);
VLC_API bool vout_AreDisplayPicturesInvalid(vout_display_t *); VLC_API bool vout_AreDisplayPicturesInvalid(vout_display_t *);
VLC_API void vout_ManageDisplay(vout_display_t *, bool allow_reset_pictures); VLC_API bool vout_ManageDisplay(vout_display_t *, bool allow_reset_pictures);
VLC_API void vout_SetDisplayFullscreen(vout_display_t *, bool is_fullscreen); VLC_API void vout_SetDisplayFullscreen(vout_display_t *, bool is_fullscreen);
VLC_API void vout_SetDisplayFilled(vout_display_t *, bool is_filled); VLC_API void vout_SetDisplayFilled(vout_display_t *, bool is_filled);
......
...@@ -755,7 +755,7 @@ static void VoutDisplayCropRatio(int *left, int *top, int *right, int *bottom, ...@@ -755,7 +755,7 @@ static void VoutDisplayCropRatio(int *left, int *top, int *right, int *bottom,
} }
} }
void vout_ManageDisplay(vout_display_t *vd, bool allow_reset_pictures) bool vout_ManageDisplay(vout_display_t *vd, bool allow_reset_pictures)
{ {
vout_display_owner_sys_t *osys = vd->owner.sys; vout_display_owner_sys_t *osys = vd->owner.sys;
...@@ -1055,6 +1055,8 @@ void vout_ManageDisplay(vout_display_t *vd, bool allow_reset_pictures) ...@@ -1055,6 +1055,8 @@ void vout_ManageDisplay(vout_display_t *vd, bool allow_reset_pictures)
} }
if (reset_render) if (reset_render)
VoutDisplayResetRender(vd); VoutDisplayResetRender(vd);
return reset_render;
} }
bool vout_AreDisplayPicturesInvalid(vout_display_t *vd) bool vout_AreDisplayPicturesInvalid(vout_display_t *vd)
......
...@@ -181,8 +181,8 @@ void vout_ManageWrapper(vout_thread_t *vout) ...@@ -181,8 +181,8 @@ void vout_ManageWrapper(vout_thread_t *vout)
vout_thread_sys_t *sys = vout->p; vout_thread_sys_t *sys = vout->p;
vout_display_t *vd = sys->display.vd; vout_display_t *vd = sys->display.vd;
bool reset_display_pool = sys->display.use_dr && vout_AreDisplayPicturesInvalid(vd); bool reset_display_pool = vout_AreDisplayPicturesInvalid(vd);
vout_ManageDisplay(vd, !sys->display.use_dr || reset_display_pool); reset_display_pool |= vout_ManageDisplay(vd, !sys->display.use_dr || reset_display_pool);
if (reset_display_pool) { if (reset_display_pool) {
sys->display.use_dr = !vout_IsDisplayFiltered(vd); sys->display.use_dr = !vout_IsDisplayFiltered(vd);
......
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