forked from qt-creator/qt-creator
		
	CppTools: Fix memory leak of QFutureWatcher when canceled
Change-Id: Ia9cd428e3bed193167903b6ffa080e4886193789 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
This commit is contained in:
		@@ -956,9 +956,10 @@ void CppModelManager::watchForCanceledProjectIndexer(const QVector<QFuture<void>
 | 
			
		||||
            continue;
 | 
			
		||||
 | 
			
		||||
        QFutureWatcher<void> *watcher = new QFutureWatcher<void>();
 | 
			
		||||
        connect(watcher, &QFutureWatcher<void>::canceled, this, [this, project]() {
 | 
			
		||||
        connect(watcher, &QFutureWatcher<void>::canceled, this, [this, project, watcher]() {
 | 
			
		||||
            if (d->m_projectToIndexerCanceled.contains(project)) // Project not yet removed
 | 
			
		||||
                d->m_projectToIndexerCanceled.insert(project, true);
 | 
			
		||||
            watcher->deleteLater();
 | 
			
		||||
        });
 | 
			
		||||
        connect(watcher, &QFutureWatcher<void>::finished, this, [watcher]() {
 | 
			
		||||
            watcher->deleteLater();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user