aa1a752979
dangling_attr_ref=true can be set when the following happens: glBegin(GL_TRIANGLES) glVertex(...) glVertex(...) glColor4(...) glVertex(...) When glColor4 is hit, the first 2 vertices are copied to the vertex_store by upgrade_vertex, but since this is done before glColor4 new values are copied, we make a note to fixup these attribute laters using dangling_attr_ref. This causes very slow rendering. What this commit does instead, is in this situation, the new attribute value are backported to the vertex store for the copied vertices after upgrade_vertex is done updating the layout. This avoids the slow corner case. Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7912 Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20495>