nixpkgs/pkgs/games/0ad/rootdir_env.patch
2016-11-05 00:39:34 +03:00

39 lines
1.1 KiB
Diff

diff -ru3 0ad-0.0.20-alpha/source/ps/GameSetup/Paths.cpp 0ad-0.0.20-alpha-new/source/ps/GameSetup/Paths.cpp
--- 0ad-0.0.20-alpha/source/ps/GameSetup/Paths.cpp 2015-02-14 04:45:13.000000000 +0300
+++ 0ad-0.0.20-alpha-new/source/ps/GameSetup/Paths.cpp 2016-11-03 16:23:47.241514876 +0300
@@ -155,32 +155,8 @@
/*static*/ OsPath Paths::Root(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
+ UNUSED2(argv0);
+ return getenv("ZEROAD_ROOTDIR");
}
/*static*/ OsPath Paths::RootData(const OsPath& argv0)