diff --git a/src/plugins/beautifier/artisticstyle/artisticstylesettings.cpp b/src/plugins/beautifier/artisticstyle/artisticstylesettings.cpp index e1d60e6c46a..0b159998e70 100644 --- a/src/plugins/beautifier/artisticstyle/artisticstylesettings.cpp +++ b/src/plugins/beautifier/artisticstyle/artisticstylesettings.cpp @@ -74,17 +74,18 @@ void ArtisticStyleSettings::updateVersion() if (m_versionFuture.isRunning()) m_versionFuture.cancel(); - m_versionFuture = QtConcurrent::run(this, &ArtisticStyleSettings::helperUpdateVersion); + m_versionFuture = QtConcurrent::run(&ArtisticStyleSettings::helperUpdateVersion, this); m_versionWatcher.setFuture(m_versionFuture); } -int ArtisticStyleSettings::helperUpdateVersion() const +void ArtisticStyleSettings::helperUpdateVersion(QFutureInterface &future) { QProcess process; process.start(command(), QStringList() << QLatin1String("--version")); if (!process.waitForFinished()) { process.kill(); - return 0; + future.reportResult(0); + return; } // The version in Artistic Style is printed like "Artistic Style Version 2.04" @@ -93,9 +94,11 @@ int ArtisticStyleSettings::helperUpdateVersion() const if (rx.indexIn(version) != -1) { const int major = rx.cap(1).toInt() * 100; const int minor = rx.cap(2).toInt(); - return major + minor; + future.reportResult(major + minor); + return; } - return 0; + future.reportResult(0); + return; } void ArtisticStyleSettings::helperSetVersion() diff --git a/src/plugins/beautifier/artisticstyle/artisticstylesettings.h b/src/plugins/beautifier/artisticstyle/artisticstylesettings.h index b820c261ac8..bd6b6fbf21d 100644 --- a/src/plugins/beautifier/artisticstyle/artisticstylesettings.h +++ b/src/plugins/beautifier/artisticstyle/artisticstylesettings.h @@ -75,7 +75,7 @@ private slots: private: QFuture m_versionFuture; QFutureWatcher m_versionWatcher; - int helperUpdateVersion() const; + void helperUpdateVersion(QFutureInterface &future); }; } // namespace ArtisticStyle