forked from qt-creator/qt-creator
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 <eike.ziller@qt.io>
This commit is contained in:
@@ -158,7 +158,7 @@ void HelpManager::registerDocumentationNow(QFutureInterface<bool> &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<bool> &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)) {
|
||||
|
||||
Reference in New Issue
Block a user