summary refs log tree commit diff
path: root/pkgs/games/0ad/rootdir_env.patch
blob: c001473e510498a86eaa8120641c8c19774ec874 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
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)