[Piglit] [PATCH] util: reorganize read_pixels_float()
Brian Paul
brianp at vmware.com
Wed Mar 28 17:46:53 UTC 2018
Use a simple if/else to organize the ES vs desktop GL code paths.
---
tests/util/piglit-util-gl.c | 26 +++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/tests/util/piglit-util-gl.c b/tests/util/piglit-util-gl.c
index 3a41a5e..f851f82 100644
--- a/tests/util/piglit-util-gl.c
+++ b/tests/util/piglit-util-gl.c
@@ -1017,27 +1017,27 @@ static GLfloat *
read_pixels_float(GLint x, GLint y, GLsizei width, GLsizei height,
GLenum format, GLfloat *pixels)
{
- GLubyte *pixels_b;
- unsigned i, j, k;
int comps = piglit_num_components(format);
if (!pixels)
pixels = malloc(width * height * comps * sizeof(GLfloat));
- if (!piglit_is_gles()) {
+ if (piglit_is_gles()) {
+ unsigned i, j, k;
+ GLubyte *pixels_b = malloc(width * height * 4 * sizeof(GLubyte));
+ glReadPixels(x, y, width, height,
+ GL_RGBA, GL_UNSIGNED_BYTE, pixels_b);
+ k = 0;
+ for (i = 0; i < width * height; i++) {
+ for (j = 0; j < comps; j++) {
+ pixels[k++] = pixels_b[i*4+j] / 255.0f;
+ }
+ }
+ free(pixels_b);
+ } else {
glReadPixels(x, y, width, height, format, GL_FLOAT, pixels);
- return pixels;
}
- pixels_b = malloc(width * height * 4 * sizeof(GLubyte));
- glReadPixels(x, y, width, height, GL_RGBA, GL_UNSIGNED_BYTE, pixels_b);
- k = 0;
- for (i = 0; i < width * height; i++) {
- for (j = 0; j < comps; j++) {
- pixels[k++] = pixels_b[i*4+j] / 255.0f;
- }
- }
- free(pixels_b);
return pixels;
}
--
2.7.4
More information about the Piglit
mailing list