Fixed multiple evstring bugs

This commit is contained in:
2026-04-21 13:57:58 +02:00
parent b845e72902
commit b5b2df24aa
+7 -2
View File
@@ -402,6 +402,7 @@ evstring_setLength(
meta = META(*s);
}
meta->length = newlen;
(*s)[newlen] = 0;
return EV_STR_ERR_NONE;
}
@@ -498,10 +499,13 @@ evstring_slice(
u64 wrapped_begin = begin < 0 ? string_len + 1 + begin : begin;
u64 wrapped_end = end < 0 ? string_len + 1 + end : end;
// In this case, the assertions don't matter
if(wrapped_begin != wrapped_end)
{
assert(wrapped_begin >= 0 && wrapped_begin < string_len);
assert(wrapped_end > 0 && wrapped_end <= string_len);
assert(wrapped_begin < wrapped_end);
}
return (evstring_view) {
.data = s,
@@ -688,8 +692,9 @@ evstring_findAll(
evstring_slice(text, v.offset + v.len, -1),
evstring_slice(query, 0, -1))) {
if(!check_run) {
results[count++] = v;
results[count] = v;
}
count++;
}
return count;
}