X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/964e717761616c43c1fa74a392fd16d6daa1abe8..0d5640fee91ae4ca8aa5e61fbf65ff726e7822d2:/src/smpi/bindings/smpi_pmpi_request.cpp diff --git a/src/smpi/bindings/smpi_pmpi_request.cpp b/src/smpi/bindings/smpi_pmpi_request.cpp index 926b55c349..c8ef0ec622 100644 --- a/src/smpi/bindings/smpi_pmpi_request.cpp +++ b/src/smpi/bindings/smpi_pmpi_request.cpp @@ -645,6 +645,9 @@ int PMPI_Waitany(int count, MPI_Request requests[], int *index, MPI_Status * sta { if (index == nullptr) return MPI_ERR_ARG; + + if (count <= 0) + return MPI_SUCCESS; smpi_bench_end(); //save requests information for tracing @@ -656,9 +659,9 @@ int PMPI_Waitany(int count, MPI_Request requests[], int *index, MPI_Status * sta MPI_Comm comm; } savedvalstype; savedvalstype* savedvals=nullptr; - if(count>0){ - savedvals = xbt_new0(savedvalstype, count); - } + + savedvals = xbt_new0(savedvalstype, count); + for (int i = 0; i < count; i++) { MPI_Request req = requests[i]; //already received requests are no longer valid if (req) {