From: Jérémie Galarneau Date: Fri, 16 Oct 2020 12:25:10 +0000 (-0400) Subject: relayd: silence null dereference warning during viewer stream creation X-Git-Tag: v2.13.0-rc1~462 X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=commitdiff_plain;h=0eafad74c0d00bf2723ed88320e1c2d8393dab5a;ds=sidebyside relayd: silence null dereference warning during viewer stream creation Coverity warns that the vstream's trace chunk may be used NULL. However, this won't happen if the corresponding relay stream has an active trace chunk. Coverity report: 1433620 Dereference after null check Either the check against null is unnecessary, or there may be a null pointer dereference. In viewer_stream_create: Pointer is checked against null but then dereferenced anyway (CWE-476) Reported-by: Coverity Scan Signed-off-by: Jérémie Galarneau Change-Id: Ie032ed415a99cfff149e3325d05f37ededb52d33 --- diff --git a/src/bin/lttng-relayd/viewer-stream.c b/src/bin/lttng-relayd/viewer-stream.c index 67c452eec..00616569b 100644 --- a/src/bin/lttng-relayd/viewer-stream.c +++ b/src/bin/lttng-relayd/viewer-stream.c @@ -122,7 +122,7 @@ struct relay_viewer_stream *viewer_stream_create(struct relay_stream *stream, */ if (stream->index_file == NULL) { vstream->index_file = NULL; - } else { + } else if (vstream->stream_file.trace_chunk) { const uint32_t connection_major = stream->trace->session->major; const uint32_t connection_minor = stream->trace->session->minor; enum lttng_trace_chunk_status chunk_status; @@ -150,7 +150,7 @@ struct relay_viewer_stream *viewer_stream_create(struct relay_stream *stream, * If we never received a data file for the current stream, delay the * opening, otherwise open it right now. */ - if (stream->file) { + if (stream->file && vstream->stream_file.trace_chunk) { int ret; char file_path[LTTNG_PATH_MAX]; enum lttng_trace_chunk_status status;