From 35efebf6f8edd67facf93ff0483edcced4d77a90 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Thu, 1 Mar 2018 10:12:45 +0100 Subject: [PATCH] Core: Do not use help engine of another thread As documentation is now registered in another thread accessing the help engine from the main thread may crash. Task-number: QTCREATORBUG-19933 Change-Id: Id5e376c793156bf2d553c237cfb068b000c5afb1 Reviewed-by: Eike Ziller --- src/plugins/coreplugin/helpmanager.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/coreplugin/helpmanager.cpp b/src/plugins/coreplugin/helpmanager.cpp index 7a36f0779cf..82ce813904a 100644 --- a/src/plugins/coreplugin/helpmanager.cpp +++ b/src/plugins/coreplugin/helpmanager.cpp @@ -158,7 +158,7 @@ void HelpManager::registerDocumentationNow(QFutureInterface &futureInterfa QHelpEngineCore helpEngine(collectionFilePath()); helpEngine.setupData(); bool docsChanged = false; - QStringList nameSpaces = d->m_helpEngine->registeredDocumentations(); + QStringList nameSpaces = helpEngine.registeredDocumentations(); for (const QString &file : files) { if (futureInterface.isCanceled()) break; @@ -178,7 +178,7 @@ void HelpManager::registerDocumentationNow(QFutureInterface &futureInterfa const QLatin1String key("CreationDate"); const QString &newDate = helpEngine.metaData(file, key).toString(); const QString &oldDate = helpEngine.metaData( - d->m_helpEngine->documentationFileName(nameSpace), key).toString(); + helpEngine.documentationFileName(nameSpace), key).toString(); if (QDateTime::fromString(newDate, Qt::ISODate) > QDateTime::fromString(oldDate, Qt::ISODate)) { if (helpEngine.unregisterDocumentation(nameSpace)) {