Mesa (master): i965: Fix brw_gs_prog_data_compare to actually check field members.

Kenneth Graunke kwg at kemper.freedesktop.org
Thu Sep 19 17:53:39 UTC 2013


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

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Mon Sep 16 23:41:57 2013 -0700

i965: Fix brw_gs_prog_data_compare to actually check field members.

&a and &b are the address of the local stack variables, not the actual
structures.  Instead of comparing the fields of a and b, we compared
...some stack memory.

Not a candidate for stable since GS code doesn't exist in 9.2.

Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Chad Versace <chad.versace at linux.intel.com>

---

 src/mesa/drivers/dri/i965/brw_vec4_gs.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_vec4_gs.c b/src/mesa/drivers/dri/i965/brw_vec4_gs.c
index 30989c3..064e541 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_gs.c
+++ b/src/mesa/drivers/dri/i965/brw_vec4_gs.c
@@ -316,7 +316,7 @@ brw_gs_prog_data_compare(const void *in_a, const void *in_b,
 
    /* Compare the rest of the struct. */
    const unsigned offset = sizeof(struct brw_vec4_prog_data);
-   if (memcmp(((char *) &a) + offset, ((char *) &b) + offset,
+   if (memcmp(((char *) a) + offset, ((char *) b) + offset,
               sizeof(struct brw_gs_prog_data) - offset)) {
       return false;
    }




More information about the mesa-commit mailing list