diff --git a/src/tools/clangpchmanagerbackend/clangpchmanagerbackendmain.cpp b/src/tools/clangpchmanagerbackend/clangpchmanagerbackendmain.cpp index 6289e95a176..27acd5b398f 100644 --- a/src/tools/clangpchmanagerbackend/clangpchmanagerbackendmain.cpp +++ b/src/tools/clangpchmanagerbackend/clangpchmanagerbackendmain.cpp @@ -57,6 +57,23 @@ using ClangBackEnd::PchManagerServer; using ClangBackEnd::ProjectParts; using ClangBackEnd::FilePathCache; +class PchManagerApplication : public QCoreApplication +{ +public: + using QCoreApplication::QCoreApplication; + + bool notify(QObject *object, QEvent *event) override + { + try { + return QCoreApplication::notify(object, event); + } catch (Sqlite::Exception &exception) { + exception.printWarning(); + } + + return false; + } +}; + class ApplicationEnvironment : public ClangBackEnd::Environment { public: @@ -106,13 +123,13 @@ int main(int argc, char *argv[]) QCoreApplication::setApplicationName(QStringLiteral("ClangPchManagerBackend")); QCoreApplication::setApplicationVersion(QStringLiteral("0.1.0")); - QCoreApplication application(argc, argv); + PchManagerApplication application(argc, argv); const QStringList arguments = processArguments(application); const QString connectionName = arguments[0]; const QString databasePath = arguments[1]; - Sqlite::Database database{Utils::PathString{databasePath}, 1000ms}; + Sqlite::Database database{Utils::PathString{databasePath}, 100000ms}; ClangBackEnd::RefactoringDatabaseInitializer databaseInitializer{database}; ClangBackEnd::FilePathCaching filePathCache{database}; ClangPathWatcher includeWatcher(filePathCache); diff --git a/src/tools/clangrefactoringbackend/clangrefactoringbackendmain.cpp b/src/tools/clangrefactoringbackend/clangrefactoringbackendmain.cpp index f2caace9051..0bc703abf57 100644 --- a/src/tools/clangrefactoringbackend/clangrefactoringbackendmain.cpp +++ b/src/tools/clangrefactoringbackend/clangrefactoringbackendmain.cpp @@ -35,6 +35,8 @@ #include #include +#include + #include using namespace std::chrono_literals; @@ -62,6 +64,23 @@ QStringList processArguments(QCoreApplication &application) return parser.positionalArguments(); } +class RefactoringApplication : public QCoreApplication +{ +public: + using QCoreApplication::QCoreApplication; + + bool notify(QObject *object, QEvent *event) override + { + try { + return QCoreApplication::notify(object, event); + } catch (Sqlite::Exception &exception) { + exception.printWarning(); + } + + return false; + } +}; + int main(int argc, char *argv[]) { try { @@ -72,13 +91,13 @@ int main(int argc, char *argv[]) QCoreApplication::setApplicationName(QStringLiteral("ClangRefactoringBackend")); QCoreApplication::setApplicationVersion(QStringLiteral("0.1.0")); - QCoreApplication application(argc, argv); + RefactoringApplication application(argc, argv); const QStringList arguments = processArguments(application); const QString connectionName = arguments[0]; const QString databasePath = arguments[1]; - Sqlite::Database database{Utils::PathString{databasePath}, 1000ms}; + Sqlite::Database database{Utils::PathString{databasePath}, 100000ms}; RefactoringDatabaseInitializer databaseInitializer{database}; FilePathCaching filePathCache{database}; SymbolIndexing symbolIndexing{database, filePathCache}; @@ -87,7 +106,6 @@ int main(int argc, char *argv[]) connectionServer.setServer(&clangCodeModelServer); connectionServer.start(connectionName); - return application.exec(); } catch (const Sqlite::Exception &exception) { exception.printWarning();