aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/common/util.odin10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/common/util.odin b/src/common/util.odin
index 94348fb..974fe6b 100644
--- a/src/common/util.odin
+++ b/src/common/util.odin
@@ -5,6 +5,7 @@ import "core:fmt"
import "core:log"
import "core:mem"
import "core:os"
+import "core:os/os2"
import "core:path/filepath"
import "core:path/slashpath"
import "core:strings"
@@ -126,12 +127,13 @@ when ODIN_OS == .Darwin || ODIN_OS == .FreeBSD || ODIN_OS == .Linux || ODIN_OS =
}
get_executable_path :: proc(allocator := context.temp_allocator) -> string {
- exe_path, ok := filepath.abs(os.args[0], context.temp_allocator)
+ exe_dir, err := os2.get_executable_directory(context.temp_allocator)
- if !ok {
- log.error("Failed to resolve executable path")
+ if err != nil {
+ log.error("Failed to resolve executable path: ", err)
return ""
}
- return filepath.dir(exe_path, allocator)
+ return exe_dir
}
+