diff --git a/src/modules/tracking/TrackingJobs.cpp b/src/modules/tracking/TrackingJobs.cpp index 18d01c7ca..0b27eab05 100644 --- a/src/modules/tracking/TrackingJobs.cpp +++ b/src/modules/tracking/TrackingJobs.cpp @@ -24,6 +24,8 @@ #include "utils/CalamaresUtilsSystem.h" #include "utils/Logger.h" +#include + #include #include @@ -79,14 +81,13 @@ TrackingInstallJob::addJob( Calamares::JobList& list, InstallTrackingConfig* con { if ( config->isEnabled() ) { - QString installUrl = config->installTrackingUrl(); const auto* s = CalamaresUtils::System::instance(); - - QString memory, disk; - memory.setNum( s->getTotalMemoryB().first ); - disk.setNum( s->getTotalDiskB() ); - - installUrl.replace( "$CPU", s->getCpuDescription() ).replace( "$MEMORY", memory ).replace( "$DISK", disk ); + QHash map { std::initializer_list< std::pair< QString, QString > > { + { QStringLiteral("CPU"), s->getCpuDescription() }, + { QStringLiteral("MEMORY"), QString::number( s->getTotalMemoryB().first ) }, + { QStringLiteral("DISK"), QString::number( s->getTotalDiskB() ) } + } }; + QString installUrl = KMacroExpander::expandMacros( config->installTrackingUrl(), map ); cDebug() << Logger::SubEntry << "install-tracking URL" << installUrl;