Move from main() the last remaining GLUT call and the last bit of logic needed to run a piglit-framework-glut test into piglit-framework-glut.c.
For symmetry, also move from main() the last bit of logic needed to run a piglit-framework-fbo test into piglit-framework-fbo.c Now main() has a simple body and a well-defined purpose: to parse argv and then dispatch the testrun to either piglit-framework-fbo or piglit-framework-glut. Signed-off-by: Chad Versace <[email protected]> --- tests/util/piglit-framework-fbo.c | 12 +++++++++++- tests/util/piglit-framework-fbo.h | 2 +- tests/util/piglit-framework-glut.c | 7 +++++++ tests/util/piglit-framework-glut.h | 1 + tests/util/piglit-framework.c | 10 +++------- 5 files changed, 23 insertions(+), 9 deletions(-) diff --git a/tests/util/piglit-framework-fbo.c b/tests/util/piglit-framework-fbo.c index 0b940f3..faf1ef7 100644 --- a/tests/util/piglit-framework-fbo.c +++ b/tests/util/piglit-framework-fbo.c @@ -61,6 +61,9 @@ static struct waffle_window *piglit_waffle_window; static struct waffle_context *piglit_waffle_context; #endif +static void +piglit_framework_fbo_destroy(void); + #ifdef PIGLIT_FRAMEWORK_FBO_USE_GLX static void piglit_framework_fbo_glx_init() @@ -311,7 +314,7 @@ piglit_framework_fbo_init(void) return piglit_framework_fbo_gl_init(); } -void +static void piglit_framework_fbo_destroy(void) { #ifdef USE_OPENGL @@ -326,3 +329,10 @@ piglit_framework_fbo_destroy(void) piglit_framework_fbo_waffle_destroy(); #endif } + +void piglit_framework_fbo_run(void) +{ + enum piglit_result result = piglit_display(); + piglit_framework_fbo_destroy(); + piglit_report_result(result); +} diff --git a/tests/util/piglit-framework-fbo.h b/tests/util/piglit-framework-fbo.h index 2fdf79d..7e52e50 100644 --- a/tests/util/piglit-framework-fbo.h +++ b/tests/util/piglit-framework-fbo.h @@ -24,4 +24,4 @@ #include <stdbool.h> bool piglit_framework_fbo_init(void); -void piglit_framework_fbo_destroy(void); +void piglit_framework_fbo_run(void); diff --git a/tests/util/piglit-framework-glut.c b/tests/util/piglit-framework-glut.c index f02860b..6e91ec4 100644 --- a/tests/util/piglit-framework-glut.c +++ b/tests/util/piglit-framework-glut.c @@ -118,3 +118,10 @@ piglit_framework_glut_init(int argc, char *argv[]) glewInit(); #endif } + +void +piglit_framework_glut_run(void) +{ + glutMainLoop(); + piglit_report_result(result); +} diff --git a/tests/util/piglit-framework-glut.h b/tests/util/piglit-framework-glut.h index 60bcc00..7116adc 100644 --- a/tests/util/piglit-framework-glut.h +++ b/tests/util/piglit-framework-glut.h @@ -26,3 +26,4 @@ #include "piglit-util.h" void piglit_framework_glut_init(int argc, char *argv[]); +void piglit_framework_glut_run(void); diff --git a/tests/util/piglit-framework.c b/tests/util/piglit-framework.c index a0ef496..16b8516 100644 --- a/tests/util/piglit-framework.c +++ b/tests/util/piglit-framework.c @@ -41,8 +41,6 @@ bool piglit_use_fbo = false; int piglit_automatic = 0; unsigned piglit_winsys_fbo = 0; -static enum piglit_result result; - #ifndef _WIN32 __attribute__((weak)) int piglit_width = 100; __attribute__((weak)) int piglit_height = 100; @@ -135,13 +133,11 @@ int main(int argc, char *argv[]) piglit_init(argc, argv); if (piglit_use_fbo) { - result = piglit_display(); - piglit_framework_fbo_destroy(); + piglit_framework_fbo_run(); } else { - glutMainLoop(); + piglit_framework_glut_run(); } - piglit_report_result(result); - /* UNREACHED */ + assert(false); return 0; } -- 1.7.10.4 _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
