diff options
author | Dave Airlie <airlied@linux.ie> | 2008-04-16 20:25:08 +1000 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2008-04-16 20:25:08 +1000 |
commit | 09df5eaff2ba2694b82d1211fd24410cb2997e25 (patch) | |
tree | 0028ffd43d1895bb9e7d1ab0f5906629b0fa4825 /src/mesa/drivers/dri/intel/intel_blit.c | |
parent | 9566cf0e2f326d8fe638748d0bc10626e8c0387e (diff) | |
parent | b64448b3e4026d3f11f366515b7544a6581403f3 (diff) |
Merge branch 'master' into r500test
Conflicts:
src/mesa/drivers/dri/r300/r300_cmdbuf.c
src/mesa/drivers/dri/r300/r300_ioctl.c
Diffstat (limited to 'src/mesa/drivers/dri/intel/intel_blit.c')
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_blit.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_blit.c b/src/mesa/drivers/dri/intel/intel_blit.c index f4358bb3dd..0f990c00b4 100644 --- a/src/mesa/drivers/dri/intel/intel_blit.c +++ b/src/mesa/drivers/dri/intel/intel_blit.c @@ -54,6 +54,7 @@ intelCopyBuffer(const __DRIdrawablePrivate * dPriv, struct intel_context *intel; const intelScreenPrivate *intelScreen; + int ret; DBG("%s\n", __FUNCTION__); @@ -123,6 +124,15 @@ intelCopyBuffer(const __DRIdrawablePrivate * dPriv, } #endif + again: + ret = dri_bufmgr_check_aperture_space(dst->buffer); + ret |= dri_bufmgr_check_aperture_space(src->buffer); + + if (ret) { + intel_batchbuffer_flush(intel->batch); + goto again; + } + for (i = 0; i < nbox; i++, pbox++) { drm_clip_rect_t box = *pbox; |