From ddab38d1659326ae7933319adefc3dff243da352 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=A9mie=20Galarneau?= Date: Tue, 23 Jun 2020 00:23:01 -0400 Subject: [PATCH] Fix: payload view: payload view always refers to parent's position MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit A payload view's fd iterator must point to the root view's fd iterator and not necessarily its parent's. This would cause the iterator to be reset when views were nested more than two levels deep. Signed-off-by: Jérémie Galarneau Change-Id: I37eab2ca1437b1a8446449984619106ffff90d3a --- src/common/payload-view.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/common/payload-view.c b/src/common/payload-view.c index f15fa8447..2daa7d3ee 100644 --- a/src/common/payload-view.c +++ b/src/common/payload-view.c @@ -30,9 +30,10 @@ struct lttng_payload_view lttng_payload_view_from_view( { return (struct lttng_payload_view) { .buffer = lttng_buffer_view_from_view( - &view->buffer, offset, len), + &view->buffer, offset, len), ._fds = view->_fds, - ._iterator.p_fds_position = &view->_iterator.fds_position, + ._iterator.p_fds_position = view->_iterator.p_fds_position ?: + &view->_iterator.fds_position, }; } -- 2.34.1