Sophie

Sophie

distrib > Fedora > 13 > i386 > media > updates-src > by-pkgid > c5d2d1be8c8b591091721c075ad67574 > files > 8

compiz-0.8.6-2.fc13.src.rpm

diff -up compiz-0ec3ec/plugins/cube.c~ compiz-0ec3ec/plugins/cube.c
--- compiz-0ec3ec/plugins/cube.c~	2007-07-23 16:20:42.000000000 -0400
+++ compiz-0ec3ec/plugins/cube.c	2007-08-15 17:45:18.000000000 -0400
@@ -1272,11 +1272,27 @@ cubePaintTop (CompScreen	      *s,
 
     if (cs->invert == 1 && size == 4 && cs->texture.name)
     {
+	glTexEnvf (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE);
+
+	glTexEnvf (GL_TEXTURE_ENV, GL_COMBINE_RGB, GL_INTERPOLATE);
+	glTexEnvf (GL_TEXTURE_ENV, GL_SOURCE0_RGB, GL_TEXTURE0);
+	glTexEnvf (GL_TEXTURE_ENV, GL_SOURCE1_RGB, GL_PRIMARY_COLOR);
+	glTexEnvf (GL_TEXTURE_ENV, GL_SOURCE2_RGB, GL_TEXTURE0);
+	glTexEnvf (GL_TEXTURE_ENV, GL_OPERAND0_RGB, GL_SRC_COLOR);
+	glTexEnvf (GL_TEXTURE_ENV, GL_OPERAND1_RGB, GL_SRC_COLOR);
+	glTexEnvf (GL_TEXTURE_ENV, GL_OPERAND2_RGB, GL_SRC_ALPHA);
+
+	glTexEnvf (GL_TEXTURE_ENV, GL_COMBINE_ALPHA, GL_REPLACE);
+	glTexEnvf (GL_TEXTURE_ENV, GL_SOURCE0_ALPHA, GL_PREVIOUS);
+	glTexEnvf (GL_TEXTURE_ENV, GL_OPERAND0_ALPHA, GL_SRC_ALPHA);
+
 	enableTexture (s, &cs->texture, COMP_TEXTURE_FILTER_GOOD);
 	glTexCoordPointer (2, GL_FLOAT, 0, cs->tc);
 	glDrawArrays (GL_TRIANGLE_FAN, 0, cs->nVertices >> 1);
 	disableTexture (s, &cs->texture);
 	glDisableClientState (GL_TEXTURE_COORD_ARRAY);
+
+	glTexEnvi (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
     }
     else
     {