aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2013-03-18 18:12:04 -0600
committerBrian Paul <brianp@vmware.com>2013-03-19 08:08:10 -0600
commit011e5f9a377f2c508ac2fcd319e4297268afbc6a (patch)
tree9f1d69230865afcf9af57319940341aa6f5bb5b9
parent24ebf10de386ec871a0afe99cd77cb796360d05c (diff)
rg-teximage: remove large stack allocations
Don't allocate 1MB arrays on the stack. Use heap allocations instead. Reviewed-by: José Fonseca <jfonseca@vmware.com>
-rw-r--r--tests/texturing/rg-teximage-01.c5
-rw-r--r--tests/texturing/rg-teximage-02.c5
-rw-r--r--tests/texturing/rgtc-teximage-01.c5
-rw-r--r--tests/texturing/rgtc-teximage-02.c5
4 files changed, 16 insertions, 4 deletions
diff --git a/tests/texturing/rg-teximage-01.c b/tests/texturing/rg-teximage-01.c
index 815d8dad..07f46a58 100644
--- a/tests/texturing/rg-teximage-01.c
+++ b/tests/texturing/rg-teximage-01.c
@@ -64,10 +64,11 @@ void
piglit_init(int argc, char **argv)
{
unsigned i;
- GLfloat result[4 * WIDTH * HEIGHT];
+ GLfloat *result;
piglit_require_extension("GL_ARB_texture_rg");
+ result = (GLfloat *) malloc(4 * WIDTH * HEIGHT * sizeof(GLfloat));
generate_rainbow_texture_data(WIDTH, HEIGHT, rgba_image);
glEnable(GL_TEXTURE_2D);
@@ -103,6 +104,8 @@ piglit_init(int argc, char **argv)
}
}
+ free(result);
+
if (piglit_automatic)
piglit_report_result(pass ? PIGLIT_PASS : PIGLIT_FAIL);
}
diff --git a/tests/texturing/rg-teximage-02.c b/tests/texturing/rg-teximage-02.c
index bcd5e530..776ed194 100644
--- a/tests/texturing/rg-teximage-02.c
+++ b/tests/texturing/rg-teximage-02.c
@@ -64,10 +64,11 @@ void
piglit_init(int argc, char **argv)
{
unsigned i;
- GLfloat result[4 * WIDTH * HEIGHT];
+ GLfloat *result;
piglit_require_extension("GL_ARB_texture_rg");
+ result = (GLfloat *) malloc(4 * WIDTH * HEIGHT * sizeof(GLfloat));
generate_rainbow_texture_data(WIDTH, HEIGHT, rgba_image);
glEnable(GL_TEXTURE_2D);
@@ -103,6 +104,8 @@ piglit_init(int argc, char **argv)
}
}
+ free(result);
+
if (piglit_automatic)
piglit_report_result(pass ? PIGLIT_PASS : PIGLIT_FAIL);
}
diff --git a/tests/texturing/rgtc-teximage-01.c b/tests/texturing/rgtc-teximage-01.c
index 0a17fb16..12bd35f6 100644
--- a/tests/texturing/rgtc-teximage-01.c
+++ b/tests/texturing/rgtc-teximage-01.c
@@ -65,10 +65,11 @@ void
piglit_init(int argc, char **argv)
{
unsigned i;
- GLfloat result[4 * WIDTH * HEIGHT];
+ GLfloat *result;
piglit_require_extension("GL_ARB_texture_compression_rgtc");
+ result = (GLfloat *) malloc(4 * WIDTH * HEIGHT * sizeof(GLfloat));
generate_rainbow_texture_data(WIDTH, HEIGHT, rgba_image);
glEnable(GL_TEXTURE_2D);
@@ -104,6 +105,8 @@ piglit_init(int argc, char **argv)
}
}
+ free(result);
+
if (piglit_automatic)
piglit_report_result(pass ? PIGLIT_PASS : PIGLIT_FAIL);
}
diff --git a/tests/texturing/rgtc-teximage-02.c b/tests/texturing/rgtc-teximage-02.c
index f4cd4edf..945b9990 100644
--- a/tests/texturing/rgtc-teximage-02.c
+++ b/tests/texturing/rgtc-teximage-02.c
@@ -65,10 +65,11 @@ void
piglit_init(int argc, char **argv)
{
unsigned i;
- GLfloat result[4 * WIDTH * HEIGHT];
+ GLfloat *result;
piglit_require_extension("GL_ARB_texture_compression_rgtc");
+ result = (GLfloat *) malloc(4 * WIDTH * HEIGHT * sizeof(GLfloat));
generate_rainbow_texture_data(WIDTH, HEIGHT, rgba_image);
glEnable(GL_TEXTURE_2D);
@@ -104,6 +105,8 @@ piglit_init(int argc, char **argv)
}
}
+ free(result);
+
if (piglit_automatic)
piglit_report_result(pass ? PIGLIT_PASS : PIGLIT_FAIL);
}