string.cut uses context.allocator by default.

This commit is contained in:
Jeroen van Rijn
2021-08-02 17:58:42 +02:00
parent 0dc900ba34
commit d260ca6738

View File

@@ -169,12 +169,12 @@ concatenate :: proc(a: []string, allocator := context.allocator) -> string {
`rune_offset` and `rune_length` are in runes, not bytes.
If `rune_length` <= 0, then it'll return the remainder of the string starting with `rune_offset`.
*/
cut :: proc(s: string, rune_offset := int(0), rune_length := int(0), allocator := context.temp_allocator) -> (res: string) {
cut :: proc(s: string, rune_offset := int(0), rune_length := int(0), allocator := context.allocator) -> (res: string) {
s := s; rune_length := rune_length;
l := utf8.rune_count_in_string(s);
if rune_offset >= l { return ""; }
if rune_offset == 0 && rune_length == 0 {
if rune_offset == 0 && rune_length <= 0 {
return clone(s, allocator);
}
if rune_length == 0 { rune_length = l; }