D23989: Fixed interaction with DOS/Windows executables in KRun::runUrl
David Faure
noreply at phabricator.kde.org
Mon Sep 16 14:19:38 BST 2019
dfaure requested changes to this revision.
dfaure added a comment.
This revision now requires changes to proceed.
Thanks for the quick fix.
INLINE COMMENTS
> krun.cpp:366
> + // On Windows, run all executables normally
> + bool runWindowsExecutable = true;
> +#else
const bool ...
> krun.cpp:370
> + // from being run, so that programs like Wine can handle them instead.
> + bool runWindowsExecutable = !mime.inherits(QStringLiteral("application/x-ms-dos-executable"));
> +#endif
const bool ...
Also, the name of this bool is very confusing in my opinion.
It's true if the file is NOT a windows executable...
Maybe name it something like supportsRunningExecutable?
> krun.cpp:390
> }
> - } else if (!isFileExecutable && isTextFile) {
> - // Don't try to run scripts without execute bit, instead
> - // open them with default application
> + } else if ((!isFileExecutable && isTextFile) || !runWindowsExecutable) {
> + // Don't try to run scripts without execute bit or any
Can you split this into two "else if" conditions? It will be more readable (both the condition, and the comment). This only duplicates a trivial "canRun = false" statement.
And then we could further simplify this by checking the new bool first, so it only needs to be checked once...
if (!supportsRunningExecutable) {
canRun = false;
} else if (!isFileExecutable && !isTextFile) {
[....]
} else if (!isFileExecutable && isTextFile) {
canRun = false;
}
What do you think?
REPOSITORY
R241 KIO
REVISION DETAIL
https://phabricator.kde.org/D23989
To: mdlubakowski, dfaure, #frameworks
Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20190916/adfdc9ac/attachment-0001.html>
More information about the Kde-frameworks-devel
mailing list