### Godot version

any version after 74458b6

### System information

Linux x64, but likely irrelevant

### Issue description

OpenXR action maps are not properly exported in recent builds of Godot 4: the `.res` file is small and does no longer seem to contain anything of use. In-game, no actions are passed on to OpenXR (obviously).

I bisected the issue down to https://github.com/godotengine/godot/commit/74458b6e9bed0f28db3374c7406eacbcf4b09b9d, which was merged in #70377.

### Steps to reproduce

1. Delete any previous export files (`.godot/exported/*/*.pkg`)
2. Perform an export (I did one for Android, but it likely works with anything)
3. Observe OpenXR actions not working in the export (error spam 'sync_action_sets: Condition "active_sets.size() == 0"'), and the exported action map file being very small (`.godot/exported/*/*.pkg`, from a few tens of kilobytes down to 296 bytes)

### Minimal reproduction project

Any OpenXR project can be used, such as https://github.com/BastiaanOlij/godot4_openxr_demo
fhead->store_buffer((const uint8_t *)pd.file_ofs[i].path_utf8.get_data(), string_len);
		for (uint32_t j = 0; j < pad; j++) {
			fhead->store_8(0);
		}
		fhead->store_64(pd.file_ofs[i].ofs);
		fhead->store_64(pd.file_ofs[i].size); 
		fhead->store_buffer(pd.file_ofs[i].md5.ptr(), 16); 
		uint32_t flags = 0;
		if (pd.file_ofs[i].encrypted) {
			flags |= PACK_FILE_ENCRYPTED;
		}
		fhead->store_32(flags);
	}
	if (fae.is_valid()) {
		fhead.unref();
		fae.unref();
	}
	int header_padding = _get_pad(PCK_PADDING, f->get_position());
	for (int i = 0; i < header_padding; i++) {
		f->store_8(Math::rand() % 256);
	}
	uint64_t file_base = f->get_position();
	f->seek(file_base_ofs);
	f->store_64(file_base); 
	f->seek(file_base);
	
	ftmp = FileAccess::open(tmppath, FileAccess::READ);
	if (ftmp.is_null()) {
		DirAccess::remove_file_or_error(tmppath);
		add_message(EXPORT_MESSAGE_ERROR, TTR("Save PCK"), vformat(TTR("Can't open file to read from path \"%s\"."), tmppath));