From 66fa3175bb8afd5cded82e11a616686a171ccd35 Mon Sep 17 00:00:00 2001 From: degomme Date: Thu, 16 Feb 2017 11:58:13 +0100 Subject: [PATCH] Avoid potential invalid reads --- src/smpi/colls/bcast-arrival-scatter.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/smpi/colls/bcast-arrival-scatter.c b/src/smpi/colls/bcast-arrival-scatter.c index 7e700eb570..ff7b10bc8e 100644 --- a/src/smpi/colls/bcast-arrival-scatter.c +++ b/src/smpi/colls/bcast-arrival-scatter.c @@ -192,12 +192,9 @@ int smpi_coll_tuned_bcast_arrival_scatter(void *buf, int count, 0, tag, comm, &status); /* at this point all nodes in this set perform all-gather operation */ - to = header_buf[myordering + 1]; - from = header_buf[myordering - 1]; - if (myordering == 0) - from = header_buf[total_nodes - 1]; - if (myordering == (total_nodes - 1)) - to = header_buf[0]; + + to = (myordering == (total_nodes - 1)) ? header_buf[0] : header_buf[myordering + 1]; + from = (myordering == 0) ? header_buf[total_nodes - 1] : header_buf[myordering - 1]; /* last segment may have a larger size since it also include the remainder */ -- 2.20.1