### Godot version

4.0 dev Beta 10

### System information

MacBook Pro M1 Max

### Issue description

After I imported font.ttf file and move it from one folder to another under ://res godot suddenly crashed, and it still crashes after restart.

### Steps to reproduce

Import some font.ttf file and try to move into different folder

### Minimal reproduction project

N/A
p_sd->ascent = MAX(p_sd->ascent, Math::round(get_hex_code_box_size(fs, gl.index).x * 0.5));
					p_sd->descent = MAX(p_sd->descent, Math::round(get_hex_code_box_size(fs, gl.index).x * 0.5));
				}
				p_sd->width += gl.advance;
				p_sd->glyphs.push_back(gl);
			}
		}
		return;
	}
	FontAdvanced *fd = font_owner.get_or_null(f);
	ERR_FAIL_COND(!fd);
	MutexLock lock(fd->mutex);
	Vector2i fss = _get_size(fd, fs);
	hb_font_t *hb_font = _font_get_hb_handle(f, fs);
	double scale = _font_get_scale(f, fs);
	double sp_sp = p_sd->extra_spacing[SPACING_SPACE];
	double sp_gl = p_sd->extra_spacing[SPACING_GLYPH];
	bool last_run = (p_sd->end == p_end);
	double ea = _get_extra_advance(f, fs);
	bool subpos = (scale != 1.0) || (_font_get_subpixel_positioning(f) == SUBPIXEL_POSITIONING_ONE_HALF) || (_font_get_subpixel_positioning(f) == SUBPIXEL_POSITIONING_ONE_QUARTER) || (_font_get_subpixel_positioning(f) == SUBPIXEL_POSITIONING_AUTO && fs <= SUBPIXEL_POSITIONING_ONE_HALF_MAX_SIZE);
	ERR_FAIL_COND(hb_font == nullptr);
	hb_buffer_clear_contents(p_sd->hb_buffer);
	hb_buffer_set_direction(p_sd->hb_buffer, p_direction);
	int flags = (p_start == 0 ? HB_BUFFER_FLAG_BOT : 0) | (p_end == p_sd->text.length() ? HB_BUFFER_FLAG_EOT : 0);
	if (p_sd->preserve_control) {
		flags |= HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES;
	} else {
		flags |= HB_BUFFER_FLAG_DEFAULT;
	}
#if HB_VERSION_ATLEAST(5, 1, 0)