Files
nixpkgs/pkgs/by-name/ze/zeroad-unwrapped/rootdir_env.patch
2026-02-27 00:51:55 +01:00

42 lines
1.2 KiB
Diff

diff --git a/source/ps/GameSetup/Paths.cpp b/source/ps/GameSetup/Paths.cpp
index 4a692713..c393e7d5 100644
--- a/source/ps/GameSetup/Paths.cpp
+++ b/source/ps/GameSetup/Paths.cpp
@@ -166,34 +166,9 @@ Paths::Paths(const CmdLineArgs& args)
}
-/*static*/ OsPath Paths::Root(const OsPath& argv0)
+/*static*/ OsPath Paths::Root([[maybe_unused]] const OsPath& argv0)
{
-#if OS_ANDROID
- return OsPath("/sdcard/0ad"); // TODO: this is kind of bogus
-#else
-
- // get full path to executable
- OsPath pathname = sys_ExecutablePathname(); // safe, but requires OS-specific implementation
- if(pathname.empty()) // failed, use argv[0] instead
- {
- errno = 0;
- pathname = wrealpath(argv0);
- if(pathname.empty())
- WARN_IF_ERR(StatusFromErrno());
- }
-
- // make sure it's valid
- if(!FileExists(pathname))
- {
- LOGERROR("Cannot find executable (expected at '%s')", pathname.string8());
- WARN_IF_ERR(StatusFromErrno());
- }
-
- for(size_t i = 0; i < 2; i++) // remove "system/name.exe"
- pathname = pathname.Parent();
- return pathname;
-
-#endif
+ return OsPath(getenv("ZEROAD_ROOTDIR"));
}
/*static*/ OsPath Paths::RootData([[maybe_unused]] const OsPath& argv0)