From: Brian Paul Date: Sat, 24 Dec 2011 15:54:26 +0000 (-0700) Subject: swrast: replace GetRow() call with _mesa_unpack_ubyte_stencil_row() X-Git-Tag: 062012170305~2591 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=95970677b92bef1b24cc83ecfe1759b35426d3d2;p=profile%2Fivi%2Fmesa.git swrast: replace GetRow() call with _mesa_unpack_ubyte_stencil_row() Reviewed-by: Eric Anholt --- diff --git a/src/mesa/swrast/s_stencil.c b/src/mesa/swrast/s_stencil.c index 5f81fe8..aa9ab16 100644 --- a/src/mesa/swrast/s_stencil.c +++ b/src/mesa/swrast/s_stencil.c @@ -26,6 +26,7 @@ #include "main/glheader.h" #include "main/context.h" #include "main/imports.h" +#include "main/format_unpack.h" #include "s_context.h" #include "s_depth.h" @@ -1044,6 +1045,8 @@ void _swrast_read_stencil_span(struct gl_context *ctx, struct gl_renderbuffer *rb, GLint n, GLint x, GLint y, GLubyte stencil[]) { + GLubyte *src; + if (y < 0 || y >= (GLint) rb->Height || x + n <= 0 || x >= (GLint) rb->Width) { /* span is completely outside framebuffer */ @@ -1064,7 +1067,8 @@ _swrast_read_stencil_span(struct gl_context *ctx, struct gl_renderbuffer *rb, return; } - rb->GetRow(ctx, rb, n, x, y, stencil); + src = (GLubyte *) rb->Data + y * rb->RowStride +x; + _mesa_unpack_ubyte_stencil_row(rb->Format, n, src, stencil); }