### Godot version

v4.1.dev3.official [a67d37f7c]

### System information

Windows 10

### Issue description

dragging upwards from the a line number in a script inside godots script editor crashes Godot. Tested in a brand new project and still occurred. Does not seem to crash when dragging downwards but dragging from a number on the lower end of the script editor seems to cause the crash often.

### Steps to reproduce

start dragging upwards from the very last line index in the script editor. Start the drag from the line number itself. Starting the drag from the line contents works as expected. Seems to crash more in scripts with more lines.

### Minimal reproduction project

N/A
return get_visible_line_count_in_range(0, text.size() - 1);
}
void TextEdit::adjust_viewport_to_caret(int p_caret) {
	ERR_FAIL_INDEX(p_caret, carets.size());
	
	scrolling = false;
	minimap_clicked = false;
	int cur_line = get_caret_line(p_caret);
	int cur_wrap = get_caret_wrap_index(p_caret);
	int first_vis_line = get_first_visible_line();
	int first_vis_wrap = first_visible_line_wrap_ofs;
	int last_vis_line = get_last_full_visible_line();
	int last_vis_wrap = get_last_full_visible_line_wrap_index();
	if (cur_line < first_vis_line || (cur_line == first_vis_line && cur_wrap < first_vis_wrap)) {
		
		set_line_as_first_visible(cur_line, cur_wrap);
	} else if (cur_line > last_vis_line || (cur_line == last_vis_line && cur_wrap > last_vis_wrap)) {
		
		set_line_as_last_visible(cur_line, cur_wrap);
	}
	int visible_width = get_size().width - theme_cache.style_normal->get_minimum_size().width - gutters_width - gutter_padding;
	if (draw_minimap) {
		visible_width -= minimap_width;
	}
	if (v_scroll->is_visible_in_tree()) {
		visible_width -= v_scroll->get_combined_minimum_size().width;
	}
	visible_width -= 20; 
	if (get_line_wrapping_mode() == LineWrappingMode::LINE_WRAPPING_NONE) {