diff options
author | Loïc Blot <loic.blot@unix-experience.fr> | 2017-08-28 17:12:30 +0200 |
---|---|---|
committer | Loïc Blot <loic.blot@unix-experience.fr> | 2017-08-28 17:12:46 +0200 |
commit | 6fd8a27c91b09f51693243586af3615f962d1730 (patch) | |
tree | 17a22d5e185cb6171a89343b090a3661edfe8306 /src/network/connectionthreads.h | |
parent | 04158d0c848b73bb9d4615c605fe51a180ba9d2c (diff) | |
download | hax-minetest-server-6fd8a27c91b09f51693243586af3615f962d1730.tar.gz hax-minetest-server-6fd8a27c91b09f51693243586af3615f962d1730.zip |
Pass SharedBuffer as value to increment reference count
This should fix #6332
Refcount is not increased due to reference, it can make this refcount incorrect in a multithread context
Diffstat (limited to '')
-rw-r--r-- | src/network/connectionthreads.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/network/connectionthreads.h b/src/network/connectionthreads.h index 11bec0c6c..c2314f87f 100644 --- a/src/network/connectionthreads.h +++ b/src/network/connectionthreads.h @@ -118,26 +118,26 @@ private: channelnum: channel on which the packet was sent reliable: true if recursing into a reliable packet */ - SharedBuffer<u8> processPacket(Channel *channel, SharedBuffer<u8> &packetdata, + SharedBuffer<u8> processPacket(Channel *channel, SharedBuffer<u8> packetdata, u16 peer_id, u8 channelnum, bool reliable); SharedBuffer<u8> handlePacketType_Control(Channel *channel, - SharedBuffer<u8> &packetdata, Peer *peer, u8 channelnum, + SharedBuffer<u8> packetdata, Peer *peer, u8 channelnum, bool reliable); SharedBuffer<u8> handlePacketType_Original(Channel *channel, - SharedBuffer<u8> &packetdata, Peer *peer, u8 channelnum, + SharedBuffer<u8> packetdata, Peer *peer, u8 channelnum, bool reliable); SharedBuffer<u8> handlePacketType_Split(Channel *channel, - SharedBuffer<u8> &packetdata, Peer *peer, u8 channelnum, + SharedBuffer<u8> packetdata, Peer *peer, u8 channelnum, bool reliable); SharedBuffer<u8> handlePacketType_Reliable(Channel *channel, - SharedBuffer<u8> &packetdata, Peer *peer, u8 channelnum, + SharedBuffer<u8> packetdata, Peer *peer, u8 channelnum, bool reliable); struct PacketTypeHandler { SharedBuffer<u8> (ConnectionReceiveThread::*handler)(Channel *channel, - SharedBuffer<u8> &packet, Peer *peer, u8 channelnum, + SharedBuffer<u8> packet, Peer *peer, u8 channelnum, bool reliable); }; |