aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorVaxry <[email protected]>2024-04-28 18:58:31 +0100
committerVaxry <[email protected]>2024-04-28 18:58:31 +0100
commitb164e67d8b1f12420ec44a1c837af7923559ccf2 (patch)
tree1689dce8952bd39305dcf3681cf1a148a91be7ff
parent28c85619243e6320e75d7abcfe8244fa99d054dd (diff)
downloadHyprland-b164e67d8b1f12420ec44a1c837af7923559ccf2.tar.gz
Hyprland-b164e67d8b1f12420ec44a1c837af7923559ccf2.zip
core: prefer mkdir over create_directory and permissions
-rw-r--r--src/Compositor.cpp13
-rw-r--r--src/plugins/HookSystem.cpp8
2 files changed, 11 insertions, 10 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp
index 17786cb2..8e333ebe 100644
--- a/src/Compositor.cpp
+++ b/src/Compositor.cpp
@@ -16,6 +16,9 @@
#include "protocols/FractionalScale.hpp"
#include "protocols/PointerConstraints.hpp"
+#include <sys/stat.h>
+#include <sys/types.h>
+
int handleCritSignal(int signo, void* data) {
Debug::log(LOG, "Hyprland received signal {}", signo);
@@ -63,15 +66,11 @@ CCompositor::CCompositor() {
setenv("HYPRLAND_INSTANCE_SIGNATURE", m_szInstanceSignature.c_str(), true);
- if (!std::filesystem::exists("/tmp/hypr")) {
- std::filesystem::create_directory("/tmp/hypr");
- std::filesystem::permissions("/tmp/hypr", std::filesystem::perms::all | std::filesystem::perms::sticky_bit, std::filesystem::perm_options::replace);
- }
+ if (!std::filesystem::exists("/tmp/hypr"))
+ mkdir("/tmp/hypr", S_IRWXU | S_IRWXG | S_IRWXO | S_ISVTX);
const auto INSTANCEPATH = "/tmp/hypr/" + m_szInstanceSignature;
- std::filesystem::create_directory(INSTANCEPATH);
- std::filesystem::permissions(INSTANCEPATH, std::filesystem::perms::group_all, std::filesystem::perm_options::replace);
- std::filesystem::permissions(INSTANCEPATH, std::filesystem::perms::owner_all, std::filesystem::perm_options::add);
+ mkdir(INSTANCEPATH.c_str(), S_IRWXU | S_IRWXG);
Debug::init(m_szInstanceSignature);
diff --git a/src/plugins/HookSystem.cpp b/src/plugins/HookSystem.cpp
index 5082f54c..7ae71726 100644
--- a/src/plugins/HookSystem.cpp
+++ b/src/plugins/HookSystem.cpp
@@ -10,6 +10,8 @@
#include <unistd.h>
#include <cstring>
#include <fstream>
+#include <sys/stat.h>
+#include <sys/types.h>
CFunctionHook::CFunctionHook(HANDLE owner, void* source, void* destination) {
m_pSource = source;
@@ -138,10 +140,10 @@ CFunctionHook::SAssembly CFunctionHook::fixInstructionProbeRIPCalls(const SInstr
const auto RANDOMDIR = "/tmp/hypr/" + g_pTokenManager->getRandomUUID();
- if (!std::filesystem::create_directory(RANDOMDIR))
- return {};
+ mkdir(RANDOMDIR.c_str(), S_IRWXU);
- std::filesystem::permissions(RANDOMDIR, std::filesystem::perms::owner_all, std::filesystem::perm_options::replace);
+ if (!std::filesystem::exists(RANDOMDIR))
+ return {};
std::ofstream ofs(RANDOMDIR + "/.hookcode.asm", std::ios::trunc);
ofs << assemblyBuilder;