00001 /* 00002 ParaGUI - crossplatform widgetset 00003 Copyright (C) 2000,2001,2002 Alexander Pipelka 00004 00005 This library is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU Library General Public 00007 License as published by the Free Software Foundation; either 00008 version 2 of the License, or (at your option) any later version. 00009 00010 This library is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 Library General Public License for more details. 00014 00015 You should have received a copy of the GNU Library General Public 00016 License along with this library; if not, write to the Free 00017 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00018 00019 Alexander Pipelka 00020 pipelka@teleweb.at 00021 00022 Last Update: $Author: mbickel $ 00023 Update Date: $Date: 2007-04-13 16:16:00 $ 00024 Source File: $Source: /home/cvspsrv/cvsroot/games/asc/source/libs/paragui/src/core/pgmain.cpp,v $ 00025 CVS/RCS Revision: $Revision: 1.2 $ 00026 Status: $State: Exp $ 00027 */ 00028 #ifndef _GNU_SOURCE 00029 #define _GNU_SOURCE 00030 #endif 00031 00032 #include "pgapplication.h" 00033 #include "pglog.h" 00034 00035 #include <cstdlib> 00036 00037 int PG_main(int argc, char **argv, PG_Application *app) { 00038 if (!app) 00039 return 1; 00040 00041 PG_TRY { 00042 app->Run(); 00043 } 00044 00045 PG_CATCH_ALL { 00046 // 00047 // For now it just aborts... 00048 // 00049 // TODO: report more information (will require adding a 00050 // PG_exception class and handling the standard exceptions in a 00051 // separate catch block) 00052 // 00053 PG_LogERR("Unhandled exception caught in PG_main! " 00054 "Aborting execution."); 00055 exit(1); 00056 } 00057 00058 return 0; 00059 }
1.4.2