summaryrefslogtreecommitdiff
path: root/extra/libva/0001-va-release-VADisplayContext-at-the-end-of-vaTerminat.patch
blob: 6c1df31f17f42f66bbac2b96f0719b53255c2818 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
From d4988142a3f2256e38c5c5cdcdfc1b4f5f3c1ea9 Mon Sep 17 00:00:00 2001
From: "Xiang, Haihao" <haihao.xiang@intel.com>
Date: Thu, 18 Jul 2013 13:13:31 +0800
Subject: [PATCH] va: release VADisplayContext at the end of vaTerminate()

Otherwise it will result in invalid reading in va_TraceEnd()

Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
---
 va/va.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/va/va.c b/va/va.c
index 6cb17ef..0ba595b 100644
--- a/va/va.c
+++ b/va/va.c
@@ -515,15 +515,15 @@ VAStatus vaTerminate (
   free(old_ctx->vtable_vpp);
   old_ctx->vtable_vpp = NULL;
 
-  if (VA_STATUS_SUCCESS == vaStatus)
-      pDisplayContext->vaDestroy(pDisplayContext);
-
   VA_TRACE_LOG(va_TraceTerminate, dpy);
 
   va_TraceEnd(dpy);
 
   va_FoolEnd(dpy);
 
+  if (VA_STATUS_SUCCESS == vaStatus)
+      pDisplayContext->vaDestroy(pDisplayContext);
+
   return vaStatus;
 }
 
-- 
2.0.0