summaryrefslogtreecommitdiff
path: root/src/mesa/swrast
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/swrast')
-rw-r--r--src/mesa/swrast/s_buffers.c8
-rw-r--r--src/mesa/swrast/s_span.c3
2 files changed, 7 insertions, 4 deletions
diff --git a/src/mesa/swrast/s_buffers.c b/src/mesa/swrast/s_buffers.c
index 7f95ed5ec5..e788900897 100644
--- a/src/mesa/swrast/s_buffers.c
+++ b/src/mesa/swrast/s_buffers.c
@@ -236,8 +236,9 @@ clear_color_buffers(GLcontext *ctx)
struct gl_renderbuffer *rb = ctx->DrawBuffer->_ColorDrawBuffers[0][i];
#if OLD_RENDERBUFFER || NEW_RENDERBUFFER
/* SetBuffer will go away */
- swrast->Driver.SetBuffer(ctx, ctx->DrawBuffer,
- ctx->DrawBuffer->_ColorDrawBit[0][i]);
+ if (swrast->Driver.SetBuffer)
+ swrast->Driver.SetBuffer(ctx, ctx->DrawBuffer,
+ ctx->DrawBuffer->_ColorDrawBit[0][i]);
#endif
if (ctx->Visual.rgbMode) {
@@ -357,7 +358,8 @@ _swrast_use_read_buffer( GLcontext *ctx )
/* Do this so the software-emulated alpha plane span functions work! */
swrast->CurrentBufferBit = ctx->ReadBuffer->_ColorReadBufferMask;
/* Tell the device driver where to read/write spans */
- swrast->Driver.SetBuffer(ctx, ctx->ReadBuffer, swrast->CurrentBufferBit);
+ if (swrast->Driver.SetBuffer)
+ swrast->Driver.SetBuffer(ctx, ctx->ReadBuffer, swrast->CurrentBufferBit);
}
diff --git a/src/mesa/swrast/s_span.c b/src/mesa/swrast/s_span.c
index 86ae136562..3a6e7195b1 100644
--- a/src/mesa/swrast/s_span.c
+++ b/src/mesa/swrast/s_span.c
@@ -1053,7 +1053,8 @@ multi_write_rgba_span( GLcontext *ctx, struct sw_span *span )
GLuint bufferBit = fb->_ColorDrawBit[output][i];
/* Set the current read/draw buffer */
swrast->CurrentBufferBit = bufferBit;
- (*swrast->Driver.SetBuffer)(ctx, ctx->DrawBuffer, bufferBit);
+ if (swrast->Driver.SetBuffer)
+ (*swrast->Driver.SetBuffer)(ctx, ctx->DrawBuffer, bufferBit);
#endif
/* make copy of incoming colors */