### Godot version

4.1.rc.custom_build. c83f912bc

### System information

Ubuntu 22.04 CI

### Issue description

When executing
```
extends Node
func _process(delta):

	var temp_variable35241 = RichTextLabel.new()
	add_child(temp_variable35241)
	temp_variable35241.set_fit_content(true)
	temp_variable35241.parse_bbcode("3188932498")
	temp_variable35241.queue_free()
```
this code freeze project in CI for at least 60 seconds

### Steps to reproduce

Above

### Minimal reproduction project

N/A
Item *it = p_frame;
	while (it) {
		ItemFX *ifx = nullptr;
		if (it->type == ITEM_CUSTOMFX || it->type == ITEM_SHAKE || it->type == ITEM_WAVE || it->type == ITEM_TORNADO || it->type == ITEM_RAINBOW) {
			ifx = static_cast<ItemFX *>(it);
		}
		if (!ifx) {
			it = _get_next_item(it, true);
			continue;
		}
		ifx->elapsed_time += p_delta_time;
		ItemShake *shake = nullptr;
		if (it->type == ITEM_SHAKE) {
			shake = static_cast<ItemShake *>(it);
		}
		if (shake) {
			bool cycle = (shake->elapsed_time > (1.0f / shake->rate));
			if (cycle) {
				shake->elapsed_time -= (1.0f / shake->rate);
				shake->reroll_random();
			}
		}
		it = _get_next_item(it, true);
	}
}
int RichTextLabel::_find_first_line(int p_from, int p_to, int p_vofs) const {