vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Sat Apr 25 10:05:10 2015 +0300| [72e0c0e9226ed306e2e82b586938991d7acfd3ff] | committer: Rémi Denis-Courmont
video_output: fix window leak > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=72e0c0e9226ed306e2e82b586938991d7acfd3ff --- src/video_output/video_output.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c index d5aee4d..b7af9d4 100644 --- a/src/video_output/video_output.c +++ b/src/video_output/video_output.c @@ -193,6 +193,8 @@ static vout_thread_t *VoutCreate(vlc_object_t *object, /* */ if (vlc_clone(&vout->p->thread, Thread, vout, VLC_THREAD_PRIORITY_OUTPUT)) { + if (vout->p->window != NULL) + vout_display_window_Delete(vout->p->window); spu_Destroy(vout->p->spu); vlc_object_release(vout); return NULL; @@ -267,6 +269,9 @@ void vout_Close(vout_thread_t *vout) vout_control_PushVoid(&vout->p->control, VOUT_CONTROL_CLEAN); vlc_join(vout->p->thread, NULL); + if (vout->p->window != NULL) + vout_display_window_Delete(vout->p->window); + vlc_mutex_lock(&vout->p->spu_lock); spu_Destroy(vout->p->spu); vout->p->spu = NULL; @@ -1378,8 +1383,6 @@ static void ThreadInit(vout_thread_t *vout) static void ThreadClean(vout_thread_t *vout) { - if (vout->p->window != NULL) - vout_window_Delete(vout->p->window); vout_chrono_Clean(&vout->p->render); vout->p->dead = true; vout_control_Dead(&vout->p->control); _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
