Commit 38876d31 fixed setting 'msg' when resizing an ofpbuf, but failed to fix the same issue in ofpbuf_clone_with_headroom(). Without this fix the newly cloned ofpbuf's 'msg', if non-NULL, will point to the buffer of the original ofpbuf.
Signed-off-by: Jarno Rajahalme <ja...@ovn.org> --- lib/ofpbuf.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/ofpbuf.c b/lib/ofpbuf.c index eab523e..1a090ee 100644 --- a/lib/ofpbuf.c +++ b/lib/ofpbuf.c @@ -185,7 +185,11 @@ ofpbuf_clone_with_headroom(const struct ofpbuf *b, size_t headroom) new_buffer->header = (char *) new_buffer->data + header_offset; } - new_buffer->msg = b->msg; + if (b->msg) { + ptrdiff_t msg_offset = (char *) b->msg - (char *) b->data; + + new_buffer->msg = (char *) new_buffer->data + msg_offset; + } return new_buffer; } -- 2.1.4 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev