summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/licenseoperation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/installer/licenseoperation.cpp')
-rw-r--r--src/libs/installer/licenseoperation.cpp23
1 files changed, 9 insertions, 14 deletions
diff --git a/src/libs/installer/licenseoperation.cpp b/src/libs/installer/licenseoperation.cpp
index 2faf8d4a7..0f4797ac0 100644
--- a/src/libs/installer/licenseoperation.cpp
+++ b/src/libs/installer/licenseoperation.cpp
@@ -42,7 +42,8 @@
using namespace QInstaller;
-LicenseOperation::LicenseOperation()
+LicenseOperation::LicenseOperation(PackageManagerCore *core)
+ : UpdateOperation(core)
{
setName(QLatin1String("License"));
}
@@ -60,26 +61,25 @@ bool LicenseOperation::performOperation()
return false;
}
- PackageManagerCore *const core = value(QLatin1String("installer")).value<PackageManagerCore*>();
+ PackageManagerCore *const core = packageManager();
if (!core) {
setError( UserDefinedError );
setErrorString(tr("Needed installer object in %1 operation is empty.").arg(name()));
return false;
}
- QString targetDir = QString::fromLatin1("%1/%2").arg(core->value(scTargetDir),
- QLatin1String("Licenses"));
+ QString targetDir = QString::fromLatin1("%1%2%3").arg(core->value(scTargetDir),
+ QDir::separator(), QLatin1String("Licenses"));
QDir dir;
dir.mkpath(targetDir);
setArguments(QStringList(targetDir));
- for (QVariantMap::const_iterator it = licenses.begin(); it != licenses.end(); ++it) {
- QFile file(targetDir + QDir::separator() + it.key());
+ for (QVariantMap::const_iterator it = licenses.constBegin(); it != licenses.constEnd(); ++it) {
+ QFile file(targetDir + QLatin1Char('/') + it.key());
if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text)) {
setError(UserDefinedError);
- setErrorString(tr("Can not write license file: %1.").arg(targetDir + QDir::separator()
- + it.key()));
+ setErrorString(tr("Can not write license file \"%1\".").arg(QDir::toNativeSeparators(file.fileName())));
return false;
}
@@ -92,7 +92,7 @@ bool LicenseOperation::performOperation()
bool LicenseOperation::undoOperation()
{
- QVariantMap licenses = value(QLatin1String("licenses")).toMap();
+ const QVariantMap licenses = value(QLatin1String("licenses")).toMap();
if (licenses.isEmpty()) {
setError(UserDefinedError);
setErrorString(tr("No license files found to delete."));
@@ -113,8 +113,3 @@ bool LicenseOperation::testOperation()
{
return true;
}
-
-Operation *LicenseOperation::clone() const
-{
- return new LicenseOperation();
-}