|
28 | 28 |
|
29 | 29 | #define SERVICE_RETURN_SUCCESS "SUCCESS" |
30 | 30 |
|
| 31 | +#define TGS_FILE2LIST(filename) (splittext(trim_left(trim_right(file2text(filename))), "\n")) |
| 32 | + |
31 | 33 | /datum/tgs_api/v3210 |
32 | 34 | var/reboot_mode = REBOOT_MODE_NORMAL |
33 | 35 | var/comms_key |
|
53 | 55 | return copytext(text, 1, i + 1) |
54 | 56 | return "" |
55 | 57 |
|
56 | | -/datum/tgs_api/v3210/proc/file2list(filename) |
57 | | - return splittext(trim_left(trim_right(file2text(filename))), "\n") |
58 | | - |
59 | 58 | /datum/tgs_api/v3210/OnWorldNew(minimum_required_security_level) |
60 | 59 | . = FALSE |
61 | 60 |
|
|
64 | 63 | if(!instance_name) |
65 | 64 | instance_name = "TG Station Server" //maybe just upgraded |
66 | 65 |
|
67 | | - var/list/logs = file2list(".git/logs/HEAD") |
| 66 | + var/list/logs = TGS_FILE2LIST(".git/logs/HEAD") |
68 | 67 | if(logs.len) |
69 | | - logs = splittext(logs[logs.len - 1], " ") |
70 | | - commit = logs[2] |
71 | | - logs = file2list(".git/logs/refs/remotes/origin/master") |
| 68 | + logs = splittext(logs[logs.len], " ") |
| 69 | + if (logs.len >= 2) |
| 70 | + commit = logs[2] |
| 71 | + else |
| 72 | + TGS_ERROR_LOG("Error parsing commit logs") |
| 73 | + |
| 74 | + logs = TGS_FILE2LIST(".git/logs/refs/remotes/origin/master") |
72 | 75 | if(logs.len) |
73 | | - originmastercommit = splittext(logs[logs.len - 1], " ")[2] |
| 76 | + logs = splittext(logs[logs.len], " ") |
| 77 | + if (logs.len >= 2) |
| 78 | + originmastercommit = logs[2] |
| 79 | + else |
| 80 | + TGS_ERROR_LOG("Error parsing origin commmit logs") |
74 | 81 |
|
75 | 82 | if(world.system_type != MS_WINDOWS) |
76 | 83 | TGS_ERROR_LOG("This API version is only supported on Windows. Not running on Windows. Aborting initialization!") |
|
92 | 99 | if(skip_compat_check && !fexists(SERVICE_INTERFACE_DLL)) |
93 | 100 | TGS_ERROR_LOG("Service parameter present but no interface DLL detected. This is symptomatic of running a service less than version 3.1! Please upgrade.") |
94 | 101 | return |
| 102 | + #if DM_VERSION >= 515 |
| 103 | + call_ext(SERVICE_INTERFACE_DLL, SERVICE_INTERFACE_FUNCTION)(instance_name, command) //trust no retval |
| 104 | + #else |
95 | 105 | call(SERVICE_INTERFACE_DLL, SERVICE_INTERFACE_FUNCTION)(instance_name, command) //trust no retval |
| 106 | + #endif |
96 | 107 | return TRUE |
97 | 108 |
|
98 | 109 | /datum/tgs_api/v3210/OnTopic(T) |
|
226 | 237 | #undef SERVICE_REQUEST_API_VERSION |
227 | 238 |
|
228 | 239 | #undef SERVICE_RETURN_SUCCESS |
| 240 | + |
| 241 | +#undef TGS_FILE2LIST |
0 commit comments