&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 <[email protected]> --- src/mesa/drivers/dri/i965/brw_vec4_gs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mesa/drivers/dri/i965/brw_vec4_gs.c b/src/mesa/drivers/dri/i965/brw_vec4_gs.c index c526107..0219915 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_gs.c +++ b/src/mesa/drivers/dri/i965/brw_vec4_gs.c @@ -313,7 +313,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; } -- 1.8.3.4 _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
