Summary: | [Bisected] Ogles3 GL3Tests/uniform_buffer_object/uniform_buffer_object_arb_spec_example_for_std140 regressed | ||
---|---|---|---|
Product: | Mesa | Reporter: | fangxun <xunx.fang> |
Component: | Drivers/DRI/i965 | Assignee: | Paul Berry <stereotype441> |
Status: | VERIFIED FIXED | QA Contact: | |
Severity: | major | ||
Priority: | high | CC: | idr |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
fangxun
2013-10-11 09:42:53 UTC
I've reproduced the failure and I have some theories as to what might be going wrong. I'll update the bug when I have a full diagnosis. Patch sent to mailing list for review: http://lists.freedesktop.org/archives/mesa-dev/2013-October/046444.html Fixed by commit e2d1eaa32a83204646bcccc029fdd31dbaee6d5e Author: Paul Berry <stereotype441@gmail.com> Date: Tue Oct 15 09:43:22 2013 -0700 glsl: In update_max_array_access, fix interface instance check. In commit f878d20 (glsl: Update ir_variable::max_ifc_array_access properly), I accidentally used the wrong kind of check to determine whether the variable being accessed was an interface instance (I used var->get_interface_type() != NULL when I should have used var->is_interface_instance()). As a result, if an unnamed interface block contained a struct which contained an array, update_max_array_access() would mistakenly interpret the struct as a named interface block and try to dereference a null var->max_ifc_array_access. This patch corrects the check, fixing the null dereference. Fixes piglit test interface-block-struct-nesting. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70368 Reviewed-by: Matt Turner <mattst88@gmail.com> Verified.Fixed. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.