From 0be200e44e44217e5e21f6358654306dcf200e71 Mon Sep 17 00:00:00 2001 From: Tim Jenssen Date: Fri, 25 Oct 2019 19:48:14 +0200 Subject: [PATCH] improve code Change-Id: I06c7274c39f7e369d4cd9bed0c1ef77e4bc08b35 Reviewed-by: Christian Kandeler --- src/plugins/android/androidmanager.cpp | 4 ++-- src/plugins/clangcodemodel/clangutils.cpp | 14 +++++--------- src/plugins/clangtools/clangtoolruncontrol.cpp | 2 +- src/plugins/perfprofiler/perfloaddialog.cpp | 7 ++----- 4 files changed, 10 insertions(+), 17 deletions(-) diff --git a/src/plugins/android/androidmanager.cpp b/src/plugins/android/androidmanager.cpp index 4958bd02a3c..80e6fbbd801 100644 --- a/src/plugins/android/androidmanager.cpp +++ b/src/plugins/android/androidmanager.cpp @@ -288,8 +288,8 @@ QJsonObject AndroidManager::deploymentSettings(const Target *target) Utils::FilePath AndroidManager::dirPath(const ProjectExplorer::Target *target) { - if (target->activeBuildConfiguration()) - return target->activeBuildConfiguration()->buildDirectory().pathAppended(Constants::ANDROID_BUILDDIRECTORY); + if (auto *bc = target->activeBuildConfiguration()) + return bc->buildDirectory().pathAppended(Constants::ANDROID_BUILDDIRECTORY); return Utils::FilePath(); } diff --git a/src/plugins/clangcodemodel/clangutils.cpp b/src/plugins/clangcodemodel/clangutils.cpp index e7d7de420a8..2734f232557 100644 --- a/src/plugins/clangcodemodel/clangutils.cpp +++ b/src/plugins/clangcodemodel/clangutils.cpp @@ -315,15 +315,11 @@ static ::Utils::FilePath compilerPath(const CppTools::ProjectPart &projectPart) static ::Utils::FilePath buildDirectory(const ProjectExplorer::Project &project) { - ProjectExplorer::Target *target = project.activeTarget(); - if (!target) - return ::Utils::FilePath(); - - ProjectExplorer::BuildConfiguration *buildConfig = target->activeBuildConfiguration(); - if (!buildConfig) - return ::Utils::FilePath(); - - return buildConfig->buildDirectory(); + if (auto *target = project.activeTarget()) { + if (auto *bc = target->activeBuildConfiguration()) + return bc->buildDirectory(); + } + return {}; } static QStringList projectPartArguments(const ProjectPart &projectPart) diff --git a/src/plugins/clangtools/clangtoolruncontrol.cpp b/src/plugins/clangtools/clangtoolruncontrol.cpp index e58b77a7690..b4d7804f962 100644 --- a/src/plugins/clangtools/clangtoolruncontrol.cpp +++ b/src/plugins/clangtools/clangtoolruncontrol.cpp @@ -495,7 +495,7 @@ void ClangToolRunWorker::finalize() QString msg = tr("%1: Not all files could be analyzed.").arg(toolName); TaskHub::addTask(Task::Error, msg, Debugger::Constants::ANALYZERTASK_ID); Target *target = runControl()->target(); - if (target && !target->activeBuildConfiguration()->buildDirectory().exists() + if (target && target->activeBuildConfiguration() && !target->activeBuildConfiguration()->buildDirectory().exists() && !m_runSettings.buildBeforeAnalysis()) { msg = tr("%1: You might need to build the project to generate or update source " "files. To build automatically, enable \"Build the project before starting " diff --git a/src/plugins/perfprofiler/perfloaddialog.cpp b/src/plugins/perfprofiler/perfloaddialog.cpp index a88c57ae643..b0602ed725c 100644 --- a/src/plugins/perfprofiler/perfloaddialog.cpp +++ b/src/plugins/perfprofiler/perfloaddialog.cpp @@ -106,11 +106,8 @@ void PerfLoadDialog::chooseDefaults() ui->kitChooser->setCurrentKitId(target->kit()->id()); - ProjectExplorer::BuildConfiguration *buildConfig = target->activeBuildConfiguration(); - if (!buildConfig) - return; - - ui->executableDirLineEdit->setText(buildConfig->buildDirectory().toString()); + if (auto *bc = target->activeBuildConfiguration()) + ui->executableDirLineEdit->setText(bc->buildDirectory().toString()); } } // namespace Internal