fixes for CHAN_BITS!=8
[mesa.git] / src / mesa / swrast / s_logic.c
index 05e2e0ade4755e941d88a896020c3199d7c33b87..60458c2b804f508d6b79111a822be7fce4082a96 100644 (file)
@@ -192,7 +192,8 @@ _swrast_logicop_ci_span(GLcontext *ctx, struct gl_renderbuffer *rb,
 
    /* Read dest values from frame buffer */
    if (span->arrayMask & SPAN_XY) {
-      rb->GetValues(ctx, rb, span->end, span->array->x, span->array->y, dest);
+      _swrast_get_values(ctx, rb, span->end, span->array->x, span->array->y,
+                         dest, sizeof(GLuint));
    }
    else {
       rb->GetRow(ctx, rb, span->end, span->x, span->y, dest);
@@ -215,10 +216,11 @@ _swrast_logicop_rgba_span(GLcontext *ctx, struct gl_renderbuffer *rb,
 
    ASSERT(span->end < MAX_WIDTH);
    ASSERT(span->arrayMask & SPAN_RGBA);
-   ASSERT(rb->DataType == GL_UNSIGNED_BYTE);
+   ASSERT(rb->DataType == CHAN_TYPE);
 
    if (span->arrayMask & SPAN_XY) {
-      rb->GetValues(ctx, rb, span->end, span->array->x, span->array->y, dest);
+      _swrast_get_values(ctx, rb, span->end, span->array->x, span->array->y,
+                         dest, 4 * sizeof(GLchan));
    }
    else {
       _swrast_read_rgba_span(ctx, rb, span->end, span->x, span->y, dest);