D22510: Added dialog to set execute permission for executable file when trying to run it.
David Faure
noreply at phabricator.kde.org
Sun Aug 25 11:17:44 BST 2019
dfaure requested changes to this revision.
dfaure added inline comments.
This revision now requires changes to proceed.
INLINE COMMENTS
> krun.cpp:1105
> const bool isFileExecutable = (isExecutableFile(m_strURL, mime.name()) ||
> mime.inherits(QStringLiteral("application/x-desktop")));
> const bool isTextFile = mime.inherits(QStringLiteral("text/plain"));
This can be removed now that isExecutableFile returns true for desktop files.
> krun.cpp:1389
> runFlags |= KRun::RunExecutables;
> + //If file is executable but doesn't have +x permission, ask user if he wants to set +x
> + if (!isExecutableFile(d->m_strURL, type) && isExecutable(type)) {
is *an* executable
(otherwise this sentence is very confusing)
> krun.cpp:1390
> + //If file is executable but doesn't have +x permission, ask user if he wants to set +x
> + if (!isExecutableFile(d->m_strURL, type) && isExecutable(type)) {
> + KMessageBox::ButtonCode makeExecutable = KMessageBox::questionYesNo(
What happens for desktop files? Won't this go into this code, before going into the existing code to make desktop files executable?
> krun.cpp:1404
> + mode_t newPermissions = binaryFile.permissions() | S_IXUSR;
> + KIO::Job* chmodJob = KIO::chmod(d->m_strURL, newPermissions);
> + connect(chmodJob, &KJob::result,
Only local files can be executed anyway, so you could use file.setPermissions(QFile::ExeUser | file.permissions()) like makeFileExecutable does for desktop files.
Actually maybe you could reuse more of that code?
REPOSITORY
R241 KIO
REVISION DETAIL
https://phabricator.kde.org/D22510
To: mdlubakowski, #frameworks, dfaure, cfeck, pino
Cc: broulik, ngraham, probono, kde-frameworks-devel, LeGast00n, GB_2, michaelh, bruns
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20190825/9b019d12/attachment-0001.html>
More information about the Kde-frameworks-devel
mailing list