mirror of
https://github.com/zeromq/cppzmq.git
synced 2025-05-29 15:34:09 +02:00
Merge pull request #401 from gummif/gfa/msg-ub
Problem: UB in message_t constructor
This commit is contained in:
commit
a6ca65cbfc
7
zmq.hpp
7
zmq.hpp
@ -365,7 +365,12 @@ class message_t
|
|||||||
int rc = zmq_msg_init_size(&msg, size_);
|
int rc = zmq_msg_init_size(&msg, size_);
|
||||||
if (rc != 0)
|
if (rc != 0)
|
||||||
throw error_t();
|
throw error_t();
|
||||||
memcpy(data(), data_, size_);
|
if (size_)
|
||||||
|
{
|
||||||
|
// this constructor allows (nullptr, 0),
|
||||||
|
// memcpy with a null pointer is UB
|
||||||
|
memcpy(data(), data_, size_);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
message_t(void *data_, size_t size_, free_fn *ffn_, void *hint_ = ZMQ_NULLPTR)
|
message_t(void *data_, size_t size_, free_fn *ffn_, void *hint_ = ZMQ_NULLPTR)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user