X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fgui%2Fapp.cpp;h=c407149d8c2d3a402cd146905b4833f93ed84341;hb=868fd551420e8b88e0bcf363c121e6e84a71b09a;hp=bb0f9243bf7e7f5471d2d446e26d4a69cf4913a4;hpb=4c951d1b043c8ee14603ffdc6704962280df40d6;p=virtualjaguar diff --git a/src/gui/app.cpp b/src/gui/app.cpp index bb0f924..c407149 100644 --- a/src/gui/app.cpp +++ b/src/gui/app.cpp @@ -10,6 +10,7 @@ // --- ---------- ------------------------------------------------------------- // JLH 12/23/2009 Created this file // JLH 01/21/2011 Added SDL initialization +// JLH 06/26/2011 Added fix to keep SDL from hijacking main() on win32 // #include "app.h" @@ -20,19 +21,23 @@ #include "mainwin.h" #include "types.h" -// Apparently on other archs, SDL is hijacking main, so let's do this: +#ifdef __GCCWIN32__ +// Apparently on win32, SDL is hijacking main from Qt. So let's do this: #undef main +#endif // Here's the main application loop--short and simple... int main(int argc, char * argv[]) { if (argc > 1) { - if (strcmp(argv[1], "--help") == 0) + if ((strcmp(argv[1], "--help") == 0) || (strcmp(argv[1], "-h") == 0) + || (strcmp(argv[1], "-?") == 0)) { printf("Virtual Jaguar 2.0.0 help\n"); printf("\n"); - printf("This is an experimental branch of Virtual Jaguar, how did you get it?\n"); + printf("Command line interface is non-functional ATM, but may return if there is\n" + "enough demand for it. :-)\n"); return 0; } } @@ -55,6 +60,10 @@ int main(int argc, char * argv[]) WriteLog("VJ: SDL (joystick, audio) successfully initialized.\n"); App app(argc, argv); // Declare an instance of the application retVal = app.exec(); // And run it! + + // Free SDL components last...! + SDL_QuitSubSystem(SDL_INIT_JOYSTICK | SDL_INIT_AUDIO); + SDL_Quit(); } LogDone(); // Close logfile