Mesa (master): i915: Fix i830 polygon stipple from PBOs.

Eric Anholt anholt at kemper.freedesktop.org
Sat Mar 3 02:00:38 UTC 2012


Module: Mesa
Branch: master
Commit: 489ac8e73a2432d29597a62cd83f09b9d1848533
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=489ac8e73a2432d29597a62cd83f09b9d1848533

Author: Kurt Roeckx <kurt at roeckx.be>
Date:   Fri Mar  2 17:31:23 2012 -0800

i915: Fix i830 polygon stipple from PBOs.

This is a direct port of the i915 patch in
a856da63247a4b403f6350914f732e14d1530ed1.

Fixes glean's pbo test.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41372
Reviewed-by: Eric Anholt <eric at anholt.net>
NOTE: This is a candidate for release branches.

---

 src/mesa/drivers/dri/i915/i830_state.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/i915/i830_state.c b/src/mesa/drivers/dri/i915/i830_state.c
index c6f1b03..ea6e0be 100644
--- a/src/mesa/drivers/dri/i915/i830_state.c
+++ b/src/mesa/drivers/dri/i915/i830_state.c
@@ -476,7 +476,7 @@ static void
 i830PolygonStipple(struct gl_context * ctx, const GLubyte * mask)
 {
    struct i830_context *i830 = i830_context(ctx);
-   const GLubyte *m = mask;
+   const GLubyte *m;
    GLubyte p[4];
    int i, j, k;
    int active = (ctx->Polygon.StippleFlag &&
@@ -488,6 +488,12 @@ i830PolygonStipple(struct gl_context * ctx, const GLubyte * mask)
       i830->state.Stipple[I830_STPREG_ST1] &= ~ST1_ENABLE;
    }
 
+   /* Use the already unpacked stipple data from the context rather than the
+    * uninterpreted mask passed in.
+    */
+   mask = (const GLubyte *)ctx->PolygonStipple;
+   m = mask;
+
    p[0] = mask[12] & 0xf;
    p[0] |= p[0] << 4;
    p[1] = mask[8] & 0xf;




More information about the mesa-commit mailing list