diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2020-01-17 13:00:13 +0100 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2020-01-17 12:14:12 +0000 |
commit | 07544d4e0721e1ddbed3d310e6d250333c2b1fb5 (patch) | |
tree | 34b7368115cca579637dd51dbe6f594ca00adcce | |
parent | f1b2120ccb43e22586072b257c0fa9b2c247f4d4 (diff) | |
download | qt-creator-07544d4e0721e1ddbed3d310e6d250333c2b1fb5.tar.gz |
Android: Fix crash when Kit has no Qt
Change-Id: I419bbb68d1d39fa88ca02fb644218ea78216c1ad
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
-rw-r--r-- | src/plugins/android/androiddeployqtstep.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/plugins/android/androiddeployqtstep.cpp b/src/plugins/android/androiddeployqtstep.cpp index 451fb48ba5..ad8a550ceb 100644 --- a/src/plugins/android/androiddeployqtstep.cpp +++ b/src/plugins/android/androiddeployqtstep.cpp @@ -143,7 +143,8 @@ AndroidDeployQtStep::AndroidDeployQtStep(ProjectExplorer::BuildStepList *parent) : ProjectExplorer::BuildStep(parent, stepId()) { setImmutable(true); - m_uninstallPreviousPackage = QtSupport::QtKitAspect::qtVersion(target()->kit())->qtVersion() < QtSupport::QtVersionNumber(5, 4, 0); + const QtSupport::BaseQtVersion * const qt = QtSupport::QtKitAspect::qtVersion(target()->kit()); + m_uninstallPreviousPackage = qt && qt->qtVersion() < QtSupport::QtVersionNumber(5, 4, 0); //: AndroidDeployQtStep default display name setDefaultDisplayName(tr("Deploy to Android device")); @@ -163,6 +164,10 @@ Core::Id AndroidDeployQtStep::stepId() bool AndroidDeployQtStep::init() { + QtSupport::BaseQtVersion *version = QtSupport::QtKitAspect::qtVersion(target()->kit()); + if (!version) // TODO: Add error message + return false; + m_androiddeployqtArgs = CommandLine(); m_androidABIs = AndroidManager::applicationAbis(target()); @@ -214,10 +219,6 @@ bool AndroidDeployQtStep::init() emit addOutput(tr("Deploying to %1").arg(m_serialNumber), OutputFormat::Stdout); - QtSupport::BaseQtVersion *version = QtSupport::QtKitAspect::qtVersion(target()->kit()); - if (!version) - return false; - m_uninstallPreviousPackageRun = m_uninstallPreviousPackage; if (m_uninstallPreviousPackageRun) m_manifestName = AndroidManager::manifestPath(target()); @@ -615,7 +616,8 @@ void AndroidDeployQtStep::setUninstallPreviousPackage(bool uninstall) AndroidDeployQtStep::UninstallType AndroidDeployQtStep::uninstallPreviousPackage() { - if (QtSupport::QtKitAspect::qtVersion(target()->kit())->qtVersion() < QtSupport::QtVersionNumber(5, 4, 0)) + const QtSupport::BaseQtVersion * const qt = QtSupport::QtKitAspect::qtVersion(target()->kit()); + if (qt && qt->qtVersion() < QtSupport::QtVersionNumber(5, 4, 0)) return ForceUnintall; return m_uninstallPreviousPackage ? Uninstall : Keep; } |