diff options
author | Loic Blot <loic.blot@unix-experience.fr> | 2017-09-03 19:01:53 +0200 |
---|---|---|
committer | Loic Blot <loic.blot@unix-experience.fr> | 2017-09-03 19:01:53 +0200 |
commit | eabf04bd34b840ee3359609fc977cf4795b33a3a (patch) | |
tree | e44966316c6e121a2987a28a7c7decc5365b890c /src/network/connection.h | |
parent | 2ac5a45faa26a9192ab3c3940d939b18b0df8b38 (diff) | |
download | minetest-eabf04bd34b840ee3359609fc977cf4795b33a3a.tar.gz minetest-eabf04bd34b840ee3359609fc977cf4795b33a3a.tar.bz2 minetest-eabf04bd34b840ee3359609fc977cf4795b33a3a.zip |
Network part requires SharedBuffers to be pass as value
This can trigger unreproductible crashes due to concurrency problem on SharedBuffers
This fixes #6354
Diffstat (limited to 'src/network/connection.h')
-rw-r--r-- | src/network/connection.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/network/connection.h b/src/network/connection.h index c54161cc9..e1bb613f0 100644 --- a/src/network/connection.h +++ b/src/network/connection.h @@ -102,16 +102,16 @@ struct BufferedPacket }; // This adds the base headers to the data and makes a packet out of it -BufferedPacket makePacket(Address &address, const SharedBuffer<u8> &data, +BufferedPacket makePacket(Address &address, SharedBuffer<u8> data, u32 protocol_id, u16 sender_peer_id, u8 channel); // Depending on size, make a TYPE_ORIGINAL or TYPE_SPLIT packet // Increments split_seqnum if a split packet is made -void makeAutoSplitPacket(const SharedBuffer<u8> &data, u32 chunksize_max, +void makeAutoSplitPacket(SharedBuffer<u8> data, u32 chunksize_max, u16 &split_seqnum, std::list<SharedBuffer<u8>> *list); // Add the TYPE_RELIABLE header to the data -SharedBuffer<u8> makeReliablePacket(const SharedBuffer<u8> &data, u16 seqnum); +SharedBuffer<u8> makeReliablePacket(SharedBuffer<u8> data, u16 seqnum); struct IncomingSplitPacket { |