diff --git a/vlib/builtin/string.v b/vlib/builtin/string.v index eb95f38f0d..47a3aa532e 100644 --- a/vlib/builtin/string.v +++ b/vlib/builtin/string.v @@ -180,6 +180,10 @@ fn (a string) clone_static() string { } pub fn (a string) clone() string { + if a == '' { + // TODO perf? an extra check in each clone() is not nice + return '' + } mut b := string{ str: unsafe {malloc(a.len + 1)} len: a.len