diff options
author | Kenneth Graunke <[email protected]> | 2016-12-17 19:47:38 -0800 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2016-12-19 11:33:40 -0800 |
commit | 78a391ed8311fc5215347f8775bf0aa29568b78d (patch) | |
tree | f63719ece1ba92b271dfb77c029a717cefcef730 /src/mesa/main/get.c | |
parent | 52098fada7e965479490045684b9897c623f5f76 (diff) |
mesa/get: Make GetFloat/GetDouble of TYPE_INT_N not normalize things.
GetFloat of integer valued things is supposed to perform a simple
int -> float conversion. INT_TO_FLOAT is not that. Instead, it
converts [-2147483648, 2147483647] to a normalized [-1.0, 1.0] float.
This is only used for COMPRESSED_TEXTURE_FORMATS, which nobody in
their right mind would try and access via glGetFloat(), but we may
as well fix it.
Found by inspection.
v2: Gotta catch 'em all (fix another case of this caught by Ilia)
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Ilia Mirkin <[email protected]>
Diffstat (limited to 'src/mesa/main/get.c')
-rw-r--r-- | src/mesa/main/get.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c index ba02cb2837f..12f937a01a9 100644 --- a/src/mesa/main/get.c +++ b/src/mesa/main/get.c @@ -1564,7 +1564,7 @@ _mesa_GetFloatv(GLenum pname, GLfloat *params) case TYPE_INT_N: for (i = 0; i < v.value_int_n.n; i++) - params[i] = INT_TO_FLOAT(v.value_int_n.ints[i]); + params[i] = (GLfloat) v.value_int_n.ints[i]; break; case TYPE_INT64: @@ -2464,7 +2464,7 @@ _mesa_GetFloati_v(GLenum pname, GLuint index, GLfloat *params) case TYPE_INT_N: for (i = 0; i < v.value_int_n.n; i++) - params[i] = INT_TO_FLOAT(v.value_int_n.ints[i]); + params[i] = (GLfloat) v.value_int_n.ints[i]; break; case TYPE_INT64: @@ -2536,7 +2536,7 @@ _mesa_GetDoublei_v(GLenum pname, GLuint index, GLdouble *params) case TYPE_INT_N: for (i = 0; i < v.value_int_n.n; i++) - params[i] = (GLdouble) INT_TO_FLOAT(v.value_int_n.ints[i]); + params[i] = (GLdouble) v.value_int_n.ints[i]; break; case TYPE_INT64: |