### Godot version

2992ffd25523cb8b3e0ef1b873c40115b8940178

### System information

Windows 10

### Issue description

Godot crashes randomly within a few seconds after project start when moving with the mouse.

![win_err](https://github.com/godotengine/godot/assets/52464204/1da28596-d95b-40f3-b32f-12219ec02c5d)

Started after recent merge of https://github.com/godotengine/godot/pull/67791.
I can confirm that reverting the pr fixes the crashes.

### Steps to reproduce

see desc

### Minimal reproduction project

N/A
ERR_FAIL_COND(window_id == DisplayServer::INVALID_WINDOW_ID);
	bool had_focus = has_focus();
	DisplayServer::get_singleton()->window_set_rect_changed_callback(Callable(), window_id);
	DisplayServer::get_singleton()->window_set_window_event_callback(Callable(), window_id);
	DisplayServer::get_singleton()->window_set_input_event_callback(Callable(), window_id);
	DisplayServer::get_singleton()->window_set_input_text_callback(Callable(), window_id);
	DisplayServer::get_singleton()->window_set_drop_files_callback(Callable(), window_id);
	if (transient_parent && transient_parent->window_id != DisplayServer::INVALID_WINDOW_ID) {
		DisplayServer::get_singleton()->window_set_transient(window_id, DisplayServer::INVALID_WINDOW_ID);
	}
	for (const Window *E : transient_children) {
		if (E->window_id != DisplayServer::INVALID_WINDOW_ID) {
			DisplayServer::get_singleton()->window_set_transient(E->window_id, DisplayServer::INVALID_WINDOW_ID);
		}
	}
	_update_from_window();
	DisplayServer::get_singleton()->delete_sub_window(window_id);
	window_id = DisplayServer::INVALID_WINDOW_ID;
	
	if (had_focus && transient_parent) {
		transient_parent->grab_focus();
	}
	_update_viewport_size();
	RS::get_singleton()->viewport_set_update_mode(get_viewport_rid(), RS::VIEWPORT_UPDATE_DISABLED);
}
void Window::_rect_changed_callback(const Rect2i &p_callback) {