summaryrefslogtreecommitdiff
path: root/src/server.cpp
diff options
context:
space:
mode:
authorsapier <Sapier at GMX dot net>2013-01-03 17:59:28 +0000
committerPerttu Ahola <celeron55@gmail.com>2013-01-07 19:00:33 +0200
commit0b1d09ff4f4e92986f6abdbc57db97c18707196a (patch)
tree1ae8016123a1c031406653c924c6f32e1e24db43 /src/server.cpp
parent8b75736c6f747ec4d01419ee6475e03feab398b9 (diff)
downloadminetest-0b1d09ff4f4e92986f6abdbc57db97c18707196a.tar.gz
minetest-0b1d09ff4f4e92986f6abdbc57db97c18707196a.tar.bz2
minetest-0b1d09ff4f4e92986f6abdbc57db97c18707196a.zip
Fix buttons not working for Lua-triggered formspecs
Diffstat (limited to 'src/server.cpp')
-rw-r--r--src/server.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/server.cpp b/src/server.cpp
index f4b5ee872..f635bc676 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -3638,7 +3638,7 @@ void Server::SendChatMessage(u16 peer_id, const std::wstring &message)
// Send as reliable
m_con.Send(peer_id, 0, data, true);
}
-void Server::SendShowFormspecMessage(u16 peer_id, const std::string formspec)
+void Server::SendShowFormspecMessage(u16 peer_id, const std::string formspec, const std::string formname)
{
DSTACK(__FUNCTION_NAME);
@@ -3649,6 +3649,7 @@ void Server::SendShowFormspecMessage(u16 peer_id, const std::string formspec)
writeU16(buf, TOCLIENT_SHOW_FORMSPEC);
os.write((char*)buf, 2);
os<<serializeLongString(formspec);
+ os<<serializeString(formname);
// Make data buffer
std::string s = os.str();
@@ -4596,7 +4597,7 @@ void Server::notifyPlayer(const char *name, const std::wstring msg)
SendChatMessage(player->peer_id, std::wstring(L"Server: -!- ")+msg);
}
-bool Server::showFormspec(const char *playername, const std::string &formspec)
+bool Server::showFormspec(const char *playername, const std::string &formspec, const std::string &formname)
{
Player *player = m_env->getPlayer(playername);
@@ -4606,7 +4607,7 @@ bool Server::showFormspec(const char *playername, const std::string &formspec)
return false;
}
- SendShowFormspecMessage(player->peer_id,formspec);
+ SendShowFormspecMessage(player->peer_id, formspec, formname);
return true;
}