Skip to content

Commit

Permalink
Send to clients node metadata that changed to become empty (#11597)
Browse files Browse the repository at this point in the history
  • Loading branch information
TurkeyMcMac committed Sep 10, 2021
1 parent 2cefe51 commit 7423c4c
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 5 deletions.
6 changes: 3 additions & 3 deletions src/nodemetadata.cpp
Expand Up @@ -113,13 +113,13 @@ int NodeMetadata::countNonPrivate() const
*/

void NodeMetadataList::serialize(std::ostream &os, u8 blockver, bool disk,
bool absolute_pos) const
bool absolute_pos, bool include_empty) const
{
/*
Version 0 is a placeholder for "nothing to see here; go away."
*/

u16 count = countNonEmpty();
u16 count = include_empty ? m_data.size() : countNonEmpty();
if (count == 0) {
writeU8(os, 0); // version
return;
Expand All @@ -134,7 +134,7 @@ void NodeMetadataList::serialize(std::ostream &os, u8 blockver, bool disk,
i != m_data.end(); ++i) {
v3s16 p = i->first;
NodeMetadata *data = i->second;
if (data->empty())
if (!include_empty && data->empty())
continue;

if (absolute_pos) {
Expand Down
2 changes: 1 addition & 1 deletion src/nodemetadata.h
Expand Up @@ -82,7 +82,7 @@ class NodeMetadataList
~NodeMetadataList();

void serialize(std::ostream &os, u8 blockver, bool disk = true,
bool absolute_pos = false) const;
bool absolute_pos = false, bool include_empty = false) const;
void deSerialize(std::istream &is, IItemDefManager *item_def_mgr,
bool absolute_pos = false);

Expand Down
2 changes: 1 addition & 1 deletion src/server.cpp
Expand Up @@ -2320,7 +2320,7 @@ void Server::sendMetadataChanged(const std::list<v3s16> &meta_updates, float far

// Send the meta changes
std::ostringstream os(std::ios::binary);
meta_updates_list.serialize(os, client->net_proto_version, false, true);
meta_updates_list.serialize(os, client->serialization_version, false, true, true);
std::ostringstream oss(std::ios::binary);
compressZlib(os.str(), oss);

Expand Down

0 comments on commit 7423c4c

Please sign in to comment.