Created attachment 104888 [details]
e.g. doom3 bfg uses it: https://github.com/RobertBeckebans/RBDOOM-3-BFG/blob/195b99e39fdda73facd73cac61e7ce317fc92e33/neo/renderer/Framebuffer.cpp#L86
< Sarayan> 904ed3b3153a73b601085ed22d2ba3693812b1cf is what made it explode
FWIW I'm fairly sure that it's actually commit 39b40ad144f5f587e505b45048e33a03641ba857
Author: Brian Paul <firstname.lastname@example.org>
Date: Fri Aug 8 15:01:50 2014 -0600
mesa: fix assertion in _mesa_drawbuffers()
Fixes failed assertion when _mesa_update_draw_buffers() was called
with GL_DRAW_BUFFER == GL_FRONT_AND_BACK. The piglit gl30basic hit
Cc: "10.2" <email@example.com>
Reviewed-by: Ian Romanick <firstname.lastname@example.org>
It changed a if (n == 1) into a if (_mesa_bitcount(...) > 1) without any regard for n, which might be 0. Should probably be
if (n > 0 && ...) or if (n == 1 && ...). Not entirely sure what the logic is there though.
Patch posted to mesa-dev. Thanks for finding/reporting this.
Fixed w/ commit 31ce84a81f7166ded07e9cb41e5dfe212dd8fed1
on Mar 26, 2017 at 03:24:02.
(provided by the Example extension).