diff --git a/vlib/os/os.v b/vlib/os/os.v index 0300f33dc3..76dd0acd05 100644 --- a/vlib/os/os.v +++ b/vlib/os/os.v @@ -520,8 +520,11 @@ pub fn getexepath() string { } $if mac { - //panic('getexepath() not impl') - return '' + mut bufsize := MAX_PATH // if buffer is too small this will be updated with size needed + if C._NSGetExecutablePath(result, &bufsize) == -1 { + panic('Could not get executable path, buffer too small (need: $bufsize).') + } + return tos(result, strlen(result)) } }