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)