From f97f1db020c4973b6eaabad2dcf049a76ae028ab Mon Sep 17 00:00:00 2001 From: Ronald Date: Fri, 9 Aug 2024 22:17:29 +0100 Subject: [PATCH] Update get_hostname Previous solution made it impossible to free the returned string containing hostname :/ --- systeminfo.odin | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/systeminfo.odin b/systeminfo.odin index 1266654..5a4a811 100644 --- a/systeminfo.odin +++ b/systeminfo.odin @@ -127,19 +127,20 @@ get_ram_usage_perc :: proc() -> (f64, bool) { return 100 * (((total - free) - (buffers + cached)) / total), true } -get_hostname :: proc() -> Maybe(string) { - data, ok := __read_entire_file_from_filename("/proc/sys/kernel/hostname") +get_hostname :: proc() -> (hostname: string, ok: bool) #optional_ok { + data: []u8 + data, ok = __read_entire_file_from_filename("/proc/sys/kernel/hostname") if !ok { - return nil + return } defer delete(data) - hostname, str_ok := strings.remove_all(string(data), "\n") + hostname, ok = strings.remove_all(string(data), "\n") if !ok { - return nil + return } - return hostname + return } @(private)