From fe5c642d9fe79f22586d54e10a98dd643199c608 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Tue, 29 Oct 2019 08:47:05 +0000 Subject: [PATCH] Fix `runtime.cstring_len` --- core/runtime/internal.odin | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/runtime/internal.odin b/core/runtime/internal.odin index 630942805..164610ae6 100644 --- a/core/runtime/internal.odin +++ b/core/runtime/internal.odin @@ -348,12 +348,12 @@ string_le :: inline proc "contextless" (a, b: string) -> bool { return string_cm string_ge :: inline proc "contextless" (a, b: string) -> bool { return string_cmp(a, b) >= 0; } cstring_len :: proc "contextless" (s: cstring) -> int { - n := 0; - p := uintptr((^byte)(s)); + p0 := uintptr((^byte)(s)); + p := p0; for p != 0 && (^byte)(p)^ != 0 { p += 1; } - return n; + return int(p - p0); } cstring_to_string :: proc "contextless" (s: cstring) -> string {