diff --git a/src/plugins/remotelinux/maemodeploystepfactory.cpp b/src/plugins/remotelinux/maemodeploystepfactory.cpp index 82b90fbe347..3fcea78e209 100644 --- a/src/plugins/remotelinux/maemodeploystepfactory.cpp +++ b/src/plugins/remotelinux/maemodeploystepfactory.cpp @@ -81,6 +81,8 @@ QStringList MaemoDeployStepFactory::availableCreationIds(BuildStepList *parent) ids << MaemoInstallRpmPackageToSysrootStep::Id; ids << MaemoUploadAndInstallRpmPackageStep::Id; } + if (qobject_cast(parent->target())) + ids << MaemoDirectDeviceUploadStep::Id; if (qobject_cast(parent->target())) { ids << MaemoMountAndInstallDeployStep::Id << MaemoMountAndCopyDeployStep::Id; diff --git a/src/plugins/remotelinux/maemodirectdeviceuploadstep.cpp b/src/plugins/remotelinux/maemodirectdeviceuploadstep.cpp index a1273471634..6994a232108 100644 --- a/src/plugins/remotelinux/maemodirectdeviceuploadstep.cpp +++ b/src/plugins/remotelinux/maemodirectdeviceuploadstep.cpp @@ -217,6 +217,15 @@ void MaemoDirectDeviceUploadStep::handleUploadFinished(Utils::SftpJobId jobId, setFinished(); } else { setDeployed(connection()->connectionParameters().host, d); + + // Terrible hack for Windows. + if (d.remoteDir.contains(QLatin1String("bin"))) { + const QString remoteFilePath = d.remoteDir + QLatin1Char('/') + + QFileInfo(d.localFilePath).fileName(); + const QString command = QLatin1String("chmod a+x ") + remoteFilePath; + connection()->createRemoteProcess(command.toUtf8())->start(); + } + uploadNextFile(); } }