| 110 | }); |
| 111 | } |
| 112 | bool FileIsExecutable(std::string const& file) const |
| 113 | { |
| 114 | if (!this->FileIsExecutableCMP0109(file)) { |
| 115 | return false; |
| 116 | } |
| 117 | #ifdef _WIN32 |
| 118 | // Pretend the Windows "python" app installer alias does not exist. |
| 119 | if (cmSystemTools::LowerCase(file).find("/windowsapps/python") != |
| 120 | std::string::npos) { |
| 121 | std::string dest; |
| 122 | if (cmSystemTools::ReadSymlink(file, dest) && |
| 123 | cmHasLiteralSuffix(dest, "\\AppInstallerPythonRedirector.exe")) { |
| 124 | return false; |
| 125 | } |
| 126 | } |
| 127 | #endif |
| 128 | return true; |
| 129 | } |
| 130 | bool FileIsExecutableCMP0109(std::string const& file) const |
| 131 | { |
| 132 | switch (this->PolicyCMP0109) { |
no test coverage detected