diff options
author | Samuel Barney <sbarney@instructure.com> | 2016-07-18 22:39:11 +0200 |
---|---|---|
committer | Samuel Barney <samjbarney@gmail.com> | 2016-08-15 19:13:03 +0200 |
commit | 24e89bbb2c656224d06aed084b952bbc885e3914 (patch) | |
tree | ba75a68cce6ea868acba60ae08efeeccf003736d /src/Bindings/PluginManager.cpp | |
parent | Switch out long download/compile links. (#3278) (diff) | |
download | cuberite-24e89bbb2c656224d06aed084b952bbc885e3914.tar cuberite-24e89bbb2c656224d06aed084b952bbc885e3914.tar.gz cuberite-24e89bbb2c656224d06aed084b952bbc885e3914.tar.bz2 cuberite-24e89bbb2c656224d06aed084b952bbc885e3914.tar.lz cuberite-24e89bbb2c656224d06aed084b952bbc885e3914.tar.xz cuberite-24e89bbb2c656224d06aed084b952bbc885e3914.tar.zst cuberite-24e89bbb2c656224d06aed084b952bbc885e3914.zip |
Diffstat (limited to 'src/Bindings/PluginManager.cpp')
-rw-r--r-- | src/Bindings/PluginManager.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/Bindings/PluginManager.cpp b/src/Bindings/PluginManager.cpp index 19d2e8b4d..fc37c2e2d 100644 --- a/src/Bindings/PluginManager.cpp +++ b/src/Bindings/PluginManager.cpp @@ -1188,14 +1188,20 @@ bool cPluginManager::CallHookPlayerUsingItem(cPlayer & a_Player, int a_BlockX, i -bool cPluginManager::CallHookPluginMessage(cClientHandle & a_Client, const AString & a_Channel, const AString & a_Message) +bool cPluginManager::CallHookPluginMessage(cClientHandle & a_Client, const AString & a_Channel, cByteBuffer & a_Buffer) { FIND_HOOK(HOOK_PLUGIN_MESSAGE); VERIFY_HOOK; + a_Buffer.CommitRead(); + AString Data; + a_Buffer.ReadAll(Data); + cByteBuffer Temp(Data.size()); + for (PluginList::iterator itr = Plugins->second.begin(); itr != Plugins->second.end(); ++itr) { - if ((*itr)->OnPluginMessage(a_Client, a_Channel, a_Message)) + Temp.WriteBuf(Data.c_str(), Data.size()); + if ((*itr)->OnPluginMessage(a_Client, a_Channel, Temp)) { return true; } |