Jelajahi Sumber

Formspec verification: Fix show_formspec inside callbacks (#7374)

SmallJoker 6 tahun lalu
induk
melakukan
bb4f0fd228
1 mengubah file dengan 2 tambahan dan 1 penghapusan
  1. 2 1
      src/network/serverpackethandler.cpp

+ 2 - 1
src/network/serverpackethandler.cpp

@@ -1514,9 +1514,10 @@ void Server::handleCommand_InventoryFields(NetworkPacket* pkt)
 	if (peer_state_iterator != m_formspec_state_data.end()) {
 		const std::string &server_formspec_name = peer_state_iterator->second;
 		if (client_formspec_name == server_formspec_name) {
-			m_script->on_playerReceiveFields(playersao, client_formspec_name, fields);
 			if (fields["quit"] == "true")
 				m_formspec_state_data.erase(peer_state_iterator);
+
+			m_script->on_playerReceiveFields(playersao, client_formspec_name, fields);
 			return;
 		}
 		actionstream << "'" << player->getName()