From e5b2784a600fc88369f51d73666bcf56f83ce33f Mon Sep 17 00:00:00 2001 From: Francis Deslauriers Date: Fri, 9 Aug 2019 16:35:54 -0400 Subject: [PATCH] Fix: flt.utils.muxer: Explicit null dereferenced Fixes coverity #1404006 ID 1404006 (#1 of 1): Explicit null dereferenced (FORWARD_NULL) 18. var_deref_op: Dereferencing null pointer *muxer_upstream_msg_iter Signed-off-by: Francis Deslauriers Change-Id: I055200226ab13653b219a084f38a2dd9bb16664b Reviewed-on: https://review.lttng.org/c/babeltrace/+/1859 CI-Build: Philippe Proulx Tested-by: jenkins Reviewed-by: Philippe Proulx --- src/plugins/utils/muxer/muxer.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/plugins/utils/muxer/muxer.c b/src/plugins/utils/muxer/muxer.c index ecd5d8d9..f67955d1 100644 --- a/src/plugins/utils/muxer/muxer.c +++ b/src/plugins/utils/muxer/muxer.c @@ -946,7 +946,13 @@ muxer_msg_iter_youngest_upstream_msg_iter( goto end; } - if (msg_ts_ns < youngest_ts_ns) { + /* + * Update the current message iterator if it has not been set + * yet, or if its current message has a timestamp smaller than + * the previously selected youngest message. + */ + if (G_UNLIKELY(*muxer_upstream_msg_iter == NULL) || + msg_ts_ns < youngest_ts_ns) { *muxer_upstream_msg_iter = cur_muxer_upstream_msg_iter; youngest_ts_ns = msg_ts_ns; -- 2.34.1