Example #1
0
void threadMain(int argc, char* argv[], int& status, QtWrapper* qt)
{
    try
    {
        Launcher l;
        l.parseOptions(argc, argv);
        l.menuLoop();
        status = EXIT_SUCCESS;
    }
    catch (po::error& err)
    {
        cerr << "Launcher: Program options error: " << err.what() << endl;
        Launcher::pauseConsole();
        status = EXIT_FAILURE;
    }
    catch (LauncherException& ex)
    {
        cerr << "Launcher: Error: " << ex.what() << endl;
        Launcher::pauseConsole();
        status = EXIT_FAILURE;
    }
    catch (...)
    {
        cerr << "Launcher: Unexpected error - exiting" << endl;
        Launcher::pauseConsole();
        status = EXIT_FAILURE;
    }

    qt->quit();
}