### Godot version

4.1.dev4

### System information

Windows 10 - Godot 4.1.dev4 - Compatibility

### Issue description

When you syncronize 2 variables and both are in watched mode (taking out the "sync" property too) the server crashes

### Steps to reproduce

Create a MultiplayerSynchronizer, export 2 variables from a script, connect the server and the client and the server will crash instantly

In the project I give, the server and client are connected automatically when you use 2 debug instances when pressing play

### Minimal reproduction project

[minimalproject.zip](https://github.com/godotengine/godot/files/11665652/minimalproject.zip)

int ofs = 1;
	while (ofs + 4 + 8 + 4 < p_buffer_len) {
		uint32_t net_id = decode_uint32(&p_buffer[ofs]);
		ofs += 4;
		uint64_t indexes = decode_uint64(&p_buffer[ofs]);
		ofs += 8;
		uint32_t size = decode_uint32(&p_buffer[ofs]);
		ofs += 4;
		ERR_FAIL_COND_V(size > uint32_t(p_buffer_len - ofs), ERR_INVALID_DATA);
		MultiplayerSynchronizer *sync = _find_synchronizer(p_from, net_id);
		Node *node = sync ? sync->get_root_node() : nullptr;
		if (!sync || sync->get_multiplayer_authority() != p_from || !node) {
			ofs += size;
			ERR_CONTINUE_MSG(true, "Ignoring delta for non-authority or invalid synchronizer.");
		}
		List<NodePath> props = sync->get_delta_properties(indexes);
		ERR_FAIL_COND_V(props.size() == 0, ERR_INVALID_DATA);
		Vector<Variant> vars;
		vars.resize(props.size());
		int consumed = 0;
		Error err = MultiplayerAPI::decode_and_decompress_variants(vars, p_buffer + ofs, size, consumed);
		ERR_FAIL_COND_V(err != OK, err);
		ERR_FAIL_COND_V(uint32_t(consumed) != size, ERR_INVALID_DATA);
		err = MultiplayerSynchronizer::set_state(props, node, vars);
		ERR_FAIL_COND_V(err != OK, err);