aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/ios/iosrunner.cpp
diff options
context:
space:
mode:
authorhjk <[email protected]>2022-04-11 11:09:46 +0200
committerhjk <[email protected]>2022-04-27 10:03:57 +0000
commit6e5415e95fa26ffbb94b061dbe5a25f145e9d7df (patch)
tree13fa63fed5e574ec0c580fad69a98e6bbacd470a /src/plugins/ios/iosrunner.cpp
parent5ed95d70888d36ac24e640b8d329dd924038d9a9 (diff)
Ios: Move runControl's runConfiguration calls further up
The data is now pulled out of the runconfig directly instead of relying on the indirection using the runconfig pointer inside RunControl. This is only barely better, but gets rid of one direct user of RunControl::runConfiguration(). Change-Id: If93576ba25ea9f3ddbeae2535217f5c2f361eaf6 Reviewed-by: Christian Stenger <[email protected]>
Diffstat (limited to 'src/plugins/ios/iosrunner.cpp')
-rw-r--r--src/plugins/ios/iosrunner.cpp19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/plugins/ios/iosrunner.cpp b/src/plugins/ios/iosrunner.cpp
index 5a93615bf2f..d4881346ded 100644
--- a/src/plugins/ios/iosrunner.cpp
+++ b/src/plugins/ios/iosrunner.cpp
@@ -96,10 +96,11 @@ IosRunner::IosRunner(RunControl *runControl)
{
setId("IosRunner");
stopRunningRunControl(runControl);
- auto runConfig = qobject_cast<IosRunConfiguration *>(runControl->runConfiguration());
- m_bundleDir = runConfig->bundleDirectory().toString();
+ const IosDeviceTypeAspect::Data *data = runControl->aspect<IosDeviceTypeAspect>();
+ QTC_ASSERT(data, return);
+ m_bundleDir = data->bundleDirectory.toString();
m_device = DeviceKitAspect::device(runControl->kit());
- m_deviceType = runConfig->deviceType();
+ m_deviceType = data->deviceType;
}
IosRunner::~IosRunner()
@@ -456,8 +457,10 @@ void IosDebugSupport::start()
setIosPlatform("ios-simulator");
}
- auto iosRunConfig = qobject_cast<IosRunConfiguration *>(runControl()->runConfiguration());
- setRunControlName(iosRunConfig->applicationName());
+ const IosDeviceTypeAspect::Data *data = runControl()->aspect<IosDeviceTypeAspect>();
+ QTC_ASSERT(data, reportFailure("Broken IosDeviceTypeAspect setup."); return);
+
+ setRunControlName(data->applicationName);
setContinueAfterAttach(true);
Utils::Port gdbServerPort = m_runner->gdbServerPort();
@@ -467,14 +470,14 @@ void IosDebugSupport::start()
const bool cppDebug = isCppDebugging();
const bool qmlDebug = isQmlDebugging();
if (cppDebug) {
- setInferiorExecutable(iosRunConfig->localExecutable());
+ setInferiorExecutable(data->localExecutable);
setRemoteChannel("connect://localhost:" + gdbServerPort.toString());
- QString bundlePath = iosRunConfig->bundleDirectory().toString();
+ QString bundlePath = data->bundleDirectory.toString();
bundlePath.chop(4);
FilePath dsymPath = FilePath::fromString(bundlePath.append(".dSYM"));
if (dsymPath.exists()
- && dsymPath.lastModified() < iosRunConfig->localExecutable().lastModified()) {
+ && dsymPath.lastModified() < data->localExecutable.lastModified()) {
TaskHub::addTask(DeploymentTask(Task::Warning,
tr("The dSYM %1 seems to be outdated, it might confuse the debugger.")
.arg(dsymPath.toUserOutput())));