diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/mesa/drivers/dri/i915tex/i830_vtbl.c | 15 | ||||
| -rw-r--r-- | src/mesa/drivers/dri/i915tex/i915_vtbl.c | 15 | 
2 files changed, 16 insertions, 14 deletions
| diff --git a/src/mesa/drivers/dri/i915tex/i830_vtbl.c b/src/mesa/drivers/dri/i915tex/i830_vtbl.c index 20c6900025..5cde80a469 100644 --- a/src/mesa/drivers/dri/i915tex/i830_vtbl.c +++ b/src/mesa/drivers/dri/i915tex/i830_vtbl.c @@ -452,13 +452,14 @@ i830_emit_state(struct intel_context *intel)     if (dirty & I830_UPLOAD_BUFFERS) {        DBG("I830_UPLOAD_BUFFERS:\n");        BEGIN_BATCH(I830_DEST_SETUP_SIZE + 2, 0); -      OUT_BATCH(state->Buffer[I830_DESTREG_CBUFADDR0]); -      OUT_BATCH(state->Buffer[I830_DESTREG_CBUFADDR1]); -      OUT_RELOC(state->draw_region->buffer, -                DRM_BO_FLAG_MEM_TT | DRM_BO_FLAG_WRITE, -                DRM_BO_MASK_MEM | DRM_BO_FLAG_WRITE, -                state->draw_region->draw_offset); - +      if (state->draw_region->buffer) { +         OUT_BATCH(state->Buffer[I830_DESTREG_CBUFADDR0]); +         OUT_BATCH(state->Buffer[I830_DESTREG_CBUFADDR1]); +         OUT_RELOC(state->draw_region->buffer, +                   DRM_BO_FLAG_MEM_TT | DRM_BO_FLAG_WRITE, +                   DRM_BO_MASK_MEM | DRM_BO_FLAG_WRITE, +                   state->draw_region->draw_offset); +      }        if (state->depth_region) {           OUT_BATCH(state->Buffer[I830_DESTREG_DBUFADDR0]);           OUT_BATCH(state->Buffer[I830_DESTREG_DBUFADDR1]); diff --git a/src/mesa/drivers/dri/i915tex/i915_vtbl.c b/src/mesa/drivers/dri/i915tex/i915_vtbl.c index cc74ceae18..b836241a63 100644 --- a/src/mesa/drivers/dri/i915tex/i915_vtbl.c +++ b/src/mesa/drivers/dri/i915tex/i915_vtbl.c @@ -328,13 +328,14 @@ i915_emit_state(struct intel_context *intel)        if (INTEL_DEBUG & DEBUG_STATE)           fprintf(stderr, "I915_UPLOAD_BUFFERS:\n");        BEGIN_BATCH(I915_DEST_SETUP_SIZE + 2, 0); -      OUT_BATCH(state->Buffer[I915_DESTREG_CBUFADDR0]); -      OUT_BATCH(state->Buffer[I915_DESTREG_CBUFADDR1]); -      OUT_RELOC(state->draw_region->buffer, -                DRM_BO_FLAG_MEM_TT | DRM_BO_FLAG_WRITE, -                DRM_BO_MASK_MEM | DRM_BO_FLAG_WRITE, -                state->draw_region->draw_offset); - +      if (state->draw_region) { +         OUT_BATCH(state->Buffer[I915_DESTREG_CBUFADDR0]); +         OUT_BATCH(state->Buffer[I915_DESTREG_CBUFADDR1]); +         OUT_RELOC(state->draw_region->buffer, +                   DRM_BO_FLAG_MEM_TT | DRM_BO_FLAG_WRITE, +                   DRM_BO_MASK_MEM | DRM_BO_FLAG_WRITE, +                   state->draw_region->draw_offset); +      }        if (state->depth_region) {           OUT_BATCH(state->Buffer[I915_DESTREG_DBUFADDR0]);           OUT_BATCH(state->Buffer[I915_DESTREG_DBUFADDR1]); | 
