source: src/app/application.cpp @ 2eda137

qt5
Last change on this file since 2eda137 was 77e06ae, checked in by kirilma <kirilma@…>, 12 years ago

catch exceptions which leak outside of event handlers

If we do not do this, QT will exit from event loop.

  • Property mode set to 100644
File size: 1.3 KB
Line 
1/*
2 * Copyright (C) 2010 Ixonos Plc.
3 *
4 * This file is part of fosdem-schedule.
5 *
6 * fosdem-schedule is free software: you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the Free
8 * Software Foundation, either version 2 of the License, or (at your option)
9 * any later version.
10 *
11 * fosdem-schedule is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
14 * more details.
15 *
16 * You should have received a copy of the GNU General Public License along with
17 * fosdem-schedule.  If not, see <http://www.gnu.org/licenses/>.
18 */
19#include "application.h"
20
21#include <ormrecord.h>
22
23// if the application uses exceptions,
24// there is always a possibility that some will leak uncached from event handler
25// crashing the application is too big punishment for it
26bool Application::notify(QObject* receiver, QEvent* event)
27{
28    try {
29        return QApplication::notify(receiver, event);
30    } catch (OrmException& e) {
31        qWarning() << "UNCAUGHT EXCEPTION: OrmException, text= " << e.text();
32        return false;
33    } catch (...) {
34        qWarning() << "UNCAUGHT EXCEPTION: unknown";
35        return false;
36    }
37}
Note: See TracBrowser for help on using the repository browser.