mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 02:58:05 +02:00
temporary workaround for bad primitives in fx_render_vb_quads
This commit is contained in:
parent
4c75d90ad2
commit
6471160770
1 changed files with 12 additions and 4 deletions
|
|
@ -400,10 +400,7 @@ static struct {
|
|||
#define GET_VERTEX(e) (fxMesa->verts + e)
|
||||
|
||||
#ifdef USE_IEEE
|
||||
/* type-punning, keep -fstrict-aliasing happy */
|
||||
typedef union { GLfloat f; GLuint u; } fu_type;
|
||||
/* 0/1 value, to allow XOR'ing with other booleans */
|
||||
#define AREA_IS_CCW( a ) (((fu_type *)&(a))->u >> 31)
|
||||
#define AREA_IS_CCW( a ) (((fi_type *)&(a))->i < 0)
|
||||
#else
|
||||
#define AREA_IS_CCW( a ) (a < 0)
|
||||
#endif
|
||||
|
|
@ -882,6 +879,17 @@ static void fx_render_vb_quads( GLcontext *ctx,
|
|||
|
||||
INIT(GL_QUADS);
|
||||
|
||||
#if 1
|
||||
/* [dBorca] Hack alert:
|
||||
* since VTX-0-2 we get here with start = 0, count = 2,
|
||||
* causing around 4 billion triangles. Revise this after
|
||||
* a while
|
||||
*/
|
||||
if (count < 3) {
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
for (i = start ; i < count-3 ; i += 4 ) {
|
||||
#define VERT(x) (fxVB + (x))
|
||||
GrVertex *_v_[4];
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue