diff -r b72c6db6890b -r 5dc02b23752f tests/auto/qdialog/tst_qdialog.cpp --- a/tests/auto/qdialog/tst_qdialog.cpp Wed Jun 23 19:07:03 2010 +0300 +++ b/tests/auto/qdialog/tst_qdialog.cpp Tue Jul 06 15:10:48 2010 +0300 @@ -447,7 +447,7 @@ } #ifndef QT_NO_EXCEPTIONS -class QDialogTestException { }; +class QDialogTestException : public std::exception { }; class ExceptionDialog : public QDialog { @@ -471,11 +471,17 @@ try { ExceptionDialog dialog; QMetaObject::invokeMethod(&dialog, "throwException", Qt::QueuedConnection); + QMetaObject::invokeMethod(&dialog, "reject", Qt::QueuedConnection); (void) dialog.exec(); } catch(...) { ++caughtExceptions; } +#ifdef Q_OS_SYMBIAN + //on symbian, the event loop absorbs exceptions + QCOMPARE(caughtExceptions, 0); +#else QCOMPARE(caughtExceptions, 1); +#endif } #else void tst_QDialog::throwInExec()