Adds gl_profile_mask to test framework, uses it in testgles
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
diff --git a/include/SDL_test_common.h b/include/SDL_test_common.h
index f07acf7..57f3114 100644
--- a/include/SDL_test_common.h
+++ b/include/SDL_test_common.h
@@ -108,6 +108,7 @@ typedef struct
int gl_major_version;
int gl_minor_version;
int gl_debug;
+ int gl_profile_mask;
} SDLTest_CommonState;
#include "begin_code.h"
diff --git a/src/test/SDL_test_common.c b/src/test/SDL_test_common.c
index 4e9429e..981e3cd 100644
--- a/src/test/SDL_test_common.c
+++ b/src/test/SDL_test_common.c
@@ -695,6 +695,9 @@ SDLTest_CommonInit(SDLTest_CommonState * state)
if (state->gl_debug) {
SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS, SDL_GL_CONTEXT_DEBUG_FLAG);
}
+ if (state->gl_profile_mask) {
+ SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, state->gl_profile_mask);
+ }
if (state->verbose & VERBOSE_MODES) {
SDL_Rect bounds;
diff --git a/test/testgles.c b/test/testgles.c
index 69322a2..4e1bc07 100644
--- a/test/testgles.c
+++ b/test/testgles.c
@@ -161,6 +161,7 @@ main(int argc, char *argv[])
state->gl_depth_size = depth;
state->gl_major_version = 1;
state->gl_minor_version = 1;
+ state->gl_profile_mask = SDL_GL_CONTEXT_PROFILE_ES;
if (fsaa) {
state->gl_multisamplebuffers=1;
state->gl_multisamplesamples=fsaa;
@@ -179,8 +180,6 @@ main(int argc, char *argv[])
}
/* Create OpenGL ES contexts */
- SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES);
-
for (i = 0; i < state->num_windows; i++) {
context[i] = SDL_GL_CreateContext(state->windows[i]);
if (!context[i]) {