summaryrefslogtreecommitdiff
path: root/community/teeworlds/fix_datadir_search.patch
blob: 19a4ae1e5a10f15517dc465284477a2a2b50b11c (plain)
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
diff -r 9582fcee983b -r c1502459a920 src/engine/e_engine.c
--- a/src/engine/e_engine.c	Sun Feb 01 20:50:22 2009 +0100
+++ b/src/engine/e_engine.c	Sun Feb 01 21:37:17 2009 +0100
@@ -539,14 +539,15 @@
 	}
 	
 	/* 2) use data-dir in PWD if present */
-	if(fs_is_dir("data"))
+	/* test subdir "/mapres" to reject unrelated "data" dir in PWD */
+	if(fs_is_dir("data/mapres"))
 	{
 		strcpy(datadir, "data");
 		return 0;
 	}
 	
 	/* 3) use compiled-in data-dir if present */
-	if (fs_is_dir(DATA_DIR))
+	if (fs_is_dir(DATA_DIR "/mapres"))
 	{
 		strcpy(datadir, DATA_DIR);
 		return 0;
@@ -572,9 +573,11 @@
 	/* 5) check for all default locations */
 	{
 		const char *sdirs[] = {
-			"/usr/share/teeworlds",
-			"/usr/local/share/teeworlds"
-			"/opt/teeworlds"
+			"/usr/share/teeworlds/data",
+			"/usr/share/games/teeworlds/data",
+			"/usr/local/share/teeworlds/data",
+			"/usr/local/share/games/teeworlds/data",
+			"/opt/teeworlds/data"
 		};
 		const int sdirs_count = sizeof(sdirs) / sizeof(sdirs[0]);