From: SmallJoker Date: Sat, 26 May 2018 10:50:44 +0000 (+0200) Subject: Formspec verification: Fix show_formspec inside callbacks (#7374) X-Git-Tag: 5.0.0~396 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=bb4f0fd2285de8b8fd578706dd5287ee1dbb9b93;p=oweals%2Fminetest.git Formspec verification: Fix show_formspec inside callbacks (#7374) --- diff --git a/src/network/serverpackethandler.cpp b/src/network/serverpackethandler.cpp index 2d810836b..c961d406e 100644 --- a/src/network/serverpackethandler.cpp +++ b/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()