From 536bf61323230eddbeb4f36266b24e4b29425d1d Mon Sep 17 00:00:00 2001 From: Colin Davidson Date: Wed, 16 Feb 2022 08:14:11 -0800 Subject: [PATCH] avoid memset on stats --- core/os/os_linux.odin | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/core/os/os_linux.odin b/core/os/os_linux.odin index dfb4b7948..140b84d8a 100644 --- a/core/os/os_linux.odin +++ b/core/os/os_linux.odin @@ -611,7 +611,8 @@ _stat :: proc(path: string) -> (OS_Stat, Errno) { cstr := strings.clone_to_cstring(path) defer delete(cstr) - s: OS_Stat + // deliberately uninitialized; the syscall fills this buffer for us + s: OS_Stat = --- result := _unix_stat(cstr, &s) if result < 0 { return s, _get_errno(result) @@ -624,7 +625,8 @@ _lstat :: proc(path: string) -> (OS_Stat, Errno) { cstr := strings.clone_to_cstring(path) defer delete(cstr) - s: OS_Stat + // deliberately uninitialized; the syscall fills this buffer for us + s: OS_Stat = --- result := _unix_lstat(cstr, &s) if result < 0 { return s, _get_errno(result) @@ -634,7 +636,8 @@ _lstat :: proc(path: string) -> (OS_Stat, Errno) { @private _fstat :: proc(fd: Handle) -> (OS_Stat, Errno) { - s: OS_Stat + // deliberately uninitialized; the syscall fills this buffer for us + s: OS_Stat = --- result := _unix_fstat(fd, &s) if result < 0 { return s, _get_errno(result)