summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog1
-rw-r--r--video.c16
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;
- }
}
///