Skip to content

Commit

Permalink
core: prefer mkdir over create_directory and permissions
Browse files Browse the repository at this point in the history
  • Loading branch information
vaxerski committed Apr 28, 2024
1 parent 28c8561 commit b164e67
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 10 deletions.
13 changes: 6 additions & 7 deletions src/Compositor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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);

Expand Down Expand Up @@ -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);

Expand Down
8 changes: 5 additions & 3 deletions src/plugins/HookSystem.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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;
Expand Down

0 comments on commit b164e67

Please sign in to comment.