diff --git a/src/common/fs/path_util.cpp b/src/common/fs/path_util.cpp index 93f815e731..dc1071b9ca 100644 --- a/src/common/fs/path_util.cpp +++ b/src/common/fs/path_util.cpp @@ -166,12 +166,11 @@ public: GenerateEdenPath(EdenPath::TASDir, eden_path / TAS_DIR); GenerateEdenPath(EdenPath::IconsDir, eden_path / ICONS_DIR); - // #ifdef _WIN32 GenerateLegacyPath(EmuPath::RyujinxDir, GetAppDataRoamingDirectory() / RYUJINX_DIR); #else // In Ryujinx's infinite wisdom, it places EVERYTHING in the config directory on UNIX - // This is incredibly stupid and violates a million XDG standards, but alas, + // This is incredibly stupid and violates a million XDG standards, but whatever GenerateLegacyPath(EmuPath::RyujinxDir, GetDataDirectory("XDG_CONFIG_HOME") / RYUJINX_DIR); #endif diff --git a/src/common/fs/symlink.cpp b/src/common/fs/symlink.cpp index 905bc5018d..7670089e4a 100644 --- a/src/common/fs/symlink.cpp +++ b/src/common/fs/symlink.cpp @@ -1,7 +1,6 @@ // SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project // SPDX-License-Identifier: GPL-3.0-or-later -#include #include "symlink.h" #ifdef _WIN32 @@ -20,11 +19,9 @@ namespace Common::FS { bool CreateSymlink(const fs::path &from, const fs::path &to) { - // TODO: test this, + does it need symlink perms? #ifdef _WIN32 - return CreateSymbolicLinkW(to.wstring().c_str(), - from.wstring().c_str(), - SYMBOLIC_LINK_FLAG_DIRECTORY); + const std::string command = fmt::format("mklink /J {} {}", to.string(), from.string()); + return system(command.c_str()) == 0; #else std::error_code ec; fs::create_directory_symlink(from, to, ec);