### Godot version

master CI builds

### System information

Linux / Editor with doubles and GCC sanitizers

### Issue description

The `Linux / Editor with doubles and GCC sanitizers` build can fail with a `attempting free on address which was not malloc()-ed` crash in the `Open and close editor (Vulkan)` step.

https://github.com/godotengine/godot/actions/runs/5366302204/jobs/9735786296#step:15:138
https://github.com/godotengine/godot/actions/runs/5389199469/jobs/9783070708?pr=78740#step:15:138

The failure doesn't seem related to either PR (in fact one of them is just a docs change). I have only seen this issue these two times, still probably worth looking into.

### Steps to reproduce

Open and close https://github.com/godotengine/regression-test-project/archive/4.0.zip using the Vulkan renderer.

### Minimal reproduction project

https://github.com/godotengine/regression-test-project/archive/4.0.zip
render_pass_create_info.attachmentCount = attachments.size();
	render_pass_create_info.pAttachments = attachments.ptr();
	render_pass_create_info.subpassCount = subpasses.size();
	render_pass_create_info.pSubpasses = subpasses.ptr();
	
	
	
	
	render_pass_create_info.dependencyCount = subpass_dependencies.size();
	if (subpass_dependencies.size()) {
		render_pass_create_info.pDependencies = subpass_dependencies.ptr();
	} else {
		render_pass_create_info.pDependencies = nullptr;
	}
	if (p_view_count == 1) {
		
		render_pass_create_info.correlatedViewMaskCount = 0;
		render_pass_create_info.pCorrelatedViewMasks = nullptr;
	} else {
		render_pass_create_info.correlatedViewMaskCount = 1;
		render_pass_create_info.pCorrelatedViewMasks = &correlation_mask;
	}
	Vector<uint32_t> view_masks;
	VkRenderPassMultiviewCreateInfo render_pass_multiview_create_info;
	if ((p_view_count > 1) && !context->supports_renderpass2()) {
		
		
		
		for (uint32_t i = 0; i < subpasses.size(); i++) {
			view_masks.push_back(view_mask);