### 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 (is_empty() || p_splitter.is_empty()) {
		return "";
	}
	int pos = 0;
	int prev_pos = 0;
	
	if (p_slice < 0) {
		return "";
	}
	if (find(p_splitter) == -1) {
		return *this;
	}
	int i = 0;
	while (true) {
		pos = find(p_splitter, pos);
		if (pos == -1) {
			pos = length(); 
		}
		int from = prev_pos;
		
		if (p_slice == i) {
			return substr(from, pos - from);
		}
		if (pos == length()) { 
			break;
		}
		pos += p_splitter.length();
		prev_pos = pos;