summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/mesa/main/texstore.c27
1 files changed, 16 insertions, 11 deletions
diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c
index a94df532c64..c65b9a99d8c 100644
--- a/src/mesa/main/texstore.c
+++ b/src/mesa/main/texstore.c
@@ -3940,21 +3940,26 @@ linear_to_nonlinear(GLfloat cl)
#endif /* FEATURE_EXT_texture_sRGB */
+
+/**
+ * Can the given type represent negative values?
+ */
static INLINE GLboolean
type_with_negative_values(GLenum type)
{
- switch (type) {
- case GL_BYTE:
- case GL_SHORT:
- case GL_INT:
- case GL_FLOAT:
- case GL_HALF_FLOAT_ARB:
- return GL_TRUE;
+ switch (type) {
+ case GL_BYTE:
+ case GL_SHORT:
+ case GL_INT:
+ case GL_FLOAT:
+ case GL_HALF_FLOAT_ARB:
+ return GL_TRUE;
default:
return GL_FALSE;
- }
+ }
}
+
/**
* This is the software fallback for Driver.GetTexImage().
* All error checking will have been done before this routine is called.
@@ -4107,9 +4112,9 @@ _mesa_get_teximage(GLcontext *ctx, GLenum target, GLint level,
GLbitfield transferOps = 0x0;
/* clamp does not apply to GetTexImage (final conversion)?
- Looks like we need clamp though when going from format containing
- negative values to unsigned format */
-
+ * Looks like we need clamp though when going from format
+ * containing negative values to unsigned format.
+ */
if (!type_with_negative_values(type) &&
(texImage->TexFormat->DataType == GL_FLOAT ||
texImage->TexFormat->DataType == GL_SIGNED_NORMALIZED))