### 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
int limit = length() - p_str.length();
	if (limit < 0) {
		return -1;
	}
	
	if (p_from < 0) {
		p_from = limit;
	} else if (p_from > limit) {
		p_from = limit;
	}
	int src_len = p_str.length();
	int len = length();
	if (src_len == 0 || len == 0) {
		return -1; 
	}
	const char32_t *src = get_data();
	for (int i = p_from; i >= 0; 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;
			}
			char32_t srcc = _find_lower(src[read_pos]);