diff options
Diffstat (limited to 'src/radeon_exa.c')
-rw-r--r-- | src/radeon_exa.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/radeon_exa.c b/src/radeon_exa.c index 5b20ecab..9444da38 100644 --- a/src/radeon_exa.c +++ b/src/radeon_exa.c @@ -344,7 +344,7 @@ static Bool RADEONPrepareAccess_CS(PixmapPtr pPix, int index) /* if we have more refs than just the BO then flush */ if (driver_priv->bo->cref > 1) - RADEONCPFlushIndirect(pScrn, 0); + radeon_cs_flush_indirect(pScrn); radeon_bo_wait(driver_priv->bo); @@ -387,7 +387,7 @@ void *RADEONEXACreatePixmap(ScreenPtr pScreen, int size, int align) return new_priv; new_priv->bo = radeon_bo_open(info->bufmgr, 0, size, - align, 0, 0); + align, 0, 0); if (!new_priv->bo) { xfree(new_priv); ErrorF("Failed to alloc memory\n"); @@ -404,6 +404,9 @@ static void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv) RADEONInfoPtr info = RADEONPTR(pScrn); struct radeon_exa_pixmap_priv *driver_priv = driverPriv; + if (!driverPriv) + return; + radeon_bo_unref(driver_priv->bo); xfree(driverPriv); } |