### Godot version

4.0 beta17

### System information

Windows10

### Issue description

call `"".split()`
Is there an infinite loop inside? Function does not return.

### Steps to reproduce

"".split()

### Minimal reproduction project

N/A
if (p_from < 0) {
		return -1;
	}
	const int src_len = p_str.length();
	const int len = length();
	if (src_len == 0 || len == 0) {
		return -1; 
	}
	const char32_t *src = get_data();
	const char32_t *str = p_str.get_data();
	for (int i = p_from; i <= (len - src_len); i++) {
		bool found = true;
		for (int j = 0; j < src_len; j++) {
			int read_pos = i + j;
			if (read_pos >= len) {
				ERR_PRINT("read_pos>=len");
				return -1;
			}
			if (src[read_pos] != str[j]) {
				found = false;
				break;
			}
		}
		if (found) {
			return i;
		}
	}
	return -1;
}
int String::find(const char *p_str, int p_from) const {