MCPcopy Create free account
hub / github.com/TheAssassin/AppImageLauncher / makeNonExecutable

Function makeNonExecutable

src/shared/shared.cpp:73–90  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

71}
72
73bool makeNonExecutable(const QString& path) {
74 struct stat fileStat{};
75
76 if (stat(path.toStdString().c_str(), &fileStat) != 0) {
77 std::cerr << "Failed to call stat() on " << path.toStdString() << std::endl;
78 return false;
79 }
80
81 auto permissions = fileStat.st_mode;
82
83 // remove executable permissions
84 for (const auto permPart : {0100, 0010, 0001}) {
85 if (permissions & permPart)
86 permissions -= permPart;
87 }
88
89 return chmod(path.toStdString().c_str(), permissions) == 0;
90}
91
92QString expandTilde(QString path) {
93 if ((path.size() == 1 && path[0] == '~') || (path.size() >= 2 && path.startsWith("~/"))) {

Callers 1

disposeAppImageMethod · 0.85

Calls 1

statClass · 0.70

Tested by

no test coverage detected