Check return value from SDL_Init().
[movit] / gtest_sdl_main.cpp
index 47d7c67..8a2fa9e 100644 (file)
@@ -3,7 +3,10 @@
 
 int main(int argc, char **argv) {
        // Set up an OpenGL context using SDL.
-       SDL_Init(SDL_INIT_VIDEO);
+       if (SDL_Init(SDL_INIT_VIDEO) == -1) {
+               fprintf(stderr, "SDL_Init failed: %s\n", SDL_GetError());
+               exit(1);
+       }
        SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 0);
        SDL_GL_SetAttribute(SDL_GL_STENCIL_SIZE, 0);
        SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
@@ -11,5 +14,7 @@ int main(int argc, char **argv) {
        SDL_WM_SetCaption("OpenGL window for unit test", NULL);
 
        testing::InitGoogleTest(&argc, argv);
-       return RUN_ALL_TESTS();
+       int err = RUN_ALL_TESTS();
+       SDL_Quit();
+       exit(err);
 }