X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/fe304706848f0a64477d4687b3ea97d5b9a0c35c..53b88680c91bba523830793ce69bb8a0fab54382:/src/smpi/bindings/smpi_pmpi_info.cpp diff --git a/src/smpi/bindings/smpi_pmpi_info.cpp b/src/smpi/bindings/smpi_pmpi_info.cpp index ca08ebf6e5..0a694f22b1 100644 --- a/src/smpi/bindings/smpi_pmpi_info.cpp +++ b/src/smpi/bindings/smpi_pmpi_info.cpp @@ -34,8 +34,10 @@ int PMPI_Info_free( MPI_Info *info){ int PMPI_Info_get(MPI_Info info, const char *key,int valuelen, char *value, int *flag){ *flag=false; - if (info == nullptr || key == nullptr || valuelen <0) + if (info == nullptr || valuelen <0) return MPI_ERR_ARG; + if (key == nullptr) + return MPI_ERR_INFO_KEY; if (value == nullptr) return MPI_ERR_INFO_VALUE; return info->get(key, valuelen, value, flag); @@ -68,15 +70,23 @@ int PMPI_Info_get_nthkey( MPI_Info info, int n, char *key){ int PMPI_Info_get_valuelen( MPI_Info info, const char *key, int *valuelen, int *flag){ *flag=false; - if (info == nullptr || key == nullptr || valuelen==nullptr) + if (info == nullptr) return MPI_ERR_ARG; + if (key == nullptr) + return MPI_ERR_INFO_KEY; + if (valuelen == nullptr) + return MPI_ERR_INFO_VALUE; return info->get_valuelen(key, valuelen, flag); } MPI_Info PMPI_Info_f2c(MPI_Fint info){ + if(info==-1) + return MPI_INFO_NULL; return static_cast(simgrid::smpi::Info::f2c(info)); } MPI_Fint PMPI_Info_c2f(MPI_Info info){ + if(info==MPI_INFO_NULL) + return -1; return info->c2f(); }