diff options
author | Xiang, Haihao <haihao.xiang@intel.com> | 2007-06-25 10:37:12 +0800 |
---|---|---|
committer | Xiang, Haihao <haihao.xiang@intel.com> | 2007-07-19 17:28:35 +0800 |
commit | d038ffdfffb846e22f360faac5d469c8e59795ad (patch) | |
tree | fdb8918efc0c76fda90e6bbcd2457c53b5f66da4 /src/i915_hwmc.c | |
parent | a9bf7e28b91692c7c7a4915cdf9603cd2ef025ea (diff) |
Release resource allocated for surface/subpicture
Diffstat (limited to 'src/i915_hwmc.c')
-rw-r--r-- | src/i915_hwmc.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/i915_hwmc.c b/src/i915_hwmc.c index f9c36ac0..52c903c2 100644 --- a/src/i915_hwmc.c +++ b/src/i915_hwmc.c @@ -757,6 +757,7 @@ static void I915XvMCDestroySurface (ScrnInfoPtr pScrn, XvMCSurfacePtr pSurf) for (i = 0; i < I915_XVMC_MAX_SURFACES; i++) { if (pXvMC->surfaces[i] == pSurf->surface_id) { + drmRmMap(pI830->drmSubFD, pXvMC->sfprivs[i]->surface_handle); i830_free_memory(pScrn, pXvMC->sfprivs[i]->surface); xfree(pXvMC->sfprivs[i]); pXvMC->nsurfaces--; @@ -777,6 +778,7 @@ static void I915XvMCDestroySubpicture (ScrnInfoPtr pScrn, XvMCSubpicturePtr pSub for (i = 0; i < I915_XVMC_MAX_SURFACES; i++) { if (pXvMC->surfaces[i] == pSubp->subpicture_id) { + drmRmMap(pI830->drmSubFD, pXvMC->sfprivs[i]->surface_handle); i830_free_memory(pScrn, pXvMC->sfprivs[i]->surface); xfree(pXvMC->sfprivs[i]); pXvMC->nsurfaces--; |