diff options
author | James Simmons <jsimmons@infradead.org> | 2011-12-26 21:53:33 +0000 |
---|---|---|
committer | James Simmons <jsimmons@infradead.org> | 2011-12-26 21:53:33 +0000 |
commit | 0789b06d20a234f82d6c036f7084a8fb6fc7a7ff (patch) | |
tree | 1803f8b0abddebedeb2d9bac87f32061bcb3f726 /src/via_xvmc.c | |
parent | 46d7bef7c0aaf87a76e2e4748dd56f893cfc26bf (diff) |
fix a double free and unmapping of video plane memory
Diffstat (limited to 'src/via_xvmc.c')
-rw-r--r-- | src/via_xvmc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/via_xvmc.c b/src/via_xvmc.c index 12ce681..b63fecb 100644 --- a/src/via_xvmc.c +++ b/src/via_xvmc.c @@ -608,6 +608,7 @@ ViaXvMCCreateSurface(ScrnInfoPtr pScrn, XvMCSurfacePtr pSurf, memset(buf + yBufSize, 0x80, yBufSize >> 1); buf += bufSize; } + drm_bo_unmap(pScrn, sPriv->memory_ref); vXvMC->sPrivs[srfNo] = sPriv; vXvMC->surfaces[srfNo] = pSurf->surface_id; @@ -735,7 +736,6 @@ ViaXvMCDestroySurface(ScrnInfoPtr pScrn, XvMCSurfacePtr pSurf) if (!__ret) ViaOverlayHide(pScrn); } - drm_bo_unmap(pScrn, vXvMC->sPrivs[i]->memory_ref); drm_bo_free(pScrn, vXvMC->sPrivs[i]->memory_ref); free(vXvMC->sPrivs[i]); vXvMC->nSurfaces--; |