From 2866e328c6f6117af51903c3ed4cb1bb108b88ce Mon Sep 17 00:00:00 2001 From: Johns Date: Tue, 10 Mar 2015 10:31:49 +0100 Subject: [PATCH] Fix bug: destroyed vdpau surfaces still used in queue. --- ChangeLog | 1 + video.c | 16 ++++++++-------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 63f0c26..c088b1d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,7 @@ User johns Date: + Fix bug: destroyed vdpau surfaces still used in queue. Fix bug: need signed char, if compiler has unsigned chars. Try smaller audio puffer, if default size fails. Fix bug: center cut-out didn't use cut off pixels. diff --git a/video.c b/video.c index aae0096..59d56a1 100644 --- a/video.c +++ b/video.c @@ -6648,6 +6648,14 @@ static void VdpauExitOutputQueue(void) int i; VdpStatus status; + if (VdpauQueue) { + VdpauPresentationQueueDestroy(VdpauQueue); + VdpauQueue = 0; + } + if (VdpauQueueTarget) { + VdpauPresentationQueueTargetDestroy(VdpauQueueTarget); + VdpauQueueTarget = 0; + } // // destroy display output surfaces // @@ -6672,14 +6680,6 @@ static void VdpauExitOutputQueue(void) } VdpauGrabRenderSurface = VDP_INVALID_HANDLE; } - if (VdpauQueue) { - VdpauPresentationQueueDestroy(VdpauQueue); - VdpauQueue = 0; - } - if (VdpauQueueTarget) { - VdpauPresentationQueueTargetDestroy(VdpauQueueTarget); - VdpauQueueTarget = 0; - } } ///