mesa: revert f9f79c8d770e696249bd98c68b563f887562c974
authorXiang, Haihao <haihao.xiang@intel.com>
Wed, 21 Mar 2007 02:50:19 +0000 (10:50 +0800)
committerXiang, Haihao <haihao.xiang@intel.com>
Wed, 21 Mar 2007 02:50:19 +0000 (10:50 +0800)
to fix #10232

Table6.1(in gl2.1) has been applied for glGetTexImage
before calling into _mesa_pack_rgba_span_float.

src/mesa/main/image.c
src/mesa/main/mtypes.h
src/mesa/main/texstore.c

index 44729b7419613f343249f0c7777c731e35519761..394a7c65cdf14b3ef8bfeacc525a8238837ab4f0 100644 (file)
@@ -1211,24 +1211,15 @@ _mesa_pack_rgba_span_float(GLcontext *ctx, GLuint n, GLfloat rgba[][4],
 
    if (dstFormat == GL_LUMINANCE || dstFormat == GL_LUMINANCE_ALPHA) {
       /* compute luminance values */
-      if (transferOps & IMAGE_RED_TO_LUMINANCE) {
-         /* Luminance = Red (glGetTexImage) */
+      if (dstType != GL_FLOAT || ctx->Color.ClampReadColor == GL_TRUE) {
          for (i = 0; i < n; i++) {
-            luminance[i] = rgba[i][RCOMP];
+            GLfloat sum = rgba[i][RCOMP] + rgba[i][GCOMP] + rgba[i][BCOMP];
+            luminance[i] = CLAMP(sum, 0.0F, 1.0F);
          }
       }
       else {
-         /* Luminance = Red + Green + Blue (glReadPixels) */
-         if (dstType != GL_FLOAT || ctx->Color.ClampReadColor == GL_TRUE) {
-            for (i = 0; i < n; i++) {
-               GLfloat sum = rgba[i][RCOMP] + rgba[i][GCOMP] + rgba[i][BCOMP];
-               luminance[i] = CLAMP(sum, 0.0F, 1.0F);
-            }
-         }
-         else {
-            for (i = 0; i < n; i++) {
-               luminance[i] = rgba[i][RCOMP] + rgba[i][GCOMP] + rgba[i][BCOMP];
-            }
+         for (i = 0; i < n; i++) {
+            luminance[i] = rgba[i][RCOMP] + rgba[i][GCOMP] + rgba[i][BCOMP];
          }
       }
    }
index 65246eb116b1b7f6468f11c25ba1fd901c88637c..df77c6cbf901292ac25581679db1e6b76f64a34e 100644 (file)
@@ -2562,7 +2562,6 @@ struct matrix_stack
 #define IMAGE_HISTOGRAM_BIT                       0x200
 #define IMAGE_MIN_MAX_BIT                         0x400
 #define IMAGE_CLAMP_BIT                           0x800 /* extra */
-#define IMAGE_RED_TO_LUMINANCE                    0x1000
 
 
 /** Pixel Transfer ops up to convolution */
index 2098bdddbf078145c0c8978f4371f97cb865717c..a570525155bcf7484f3a647927abc3c3d59900cc 100644 (file)
@@ -3630,7 +3630,7 @@ _mesa_get_teximage(GLcontext *ctx, GLenum target, GLint level,
                }
                _mesa_pack_rgba_span_float(ctx, width, (GLfloat (*)[4]) rgba,
                                           format, type, dest,
-                                          &ctx->Pack, IMAGE_RED_TO_LUMINANCE);
+                                          &ctx->Pack, 0x0 /*image xfer ops*/);
             } /* format */
          } /* row */
       } /* img */