A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge remote-tracking branch 'origin/master'
[simgrid.git]
/
src
/
smpi
/
smpi_f77.c
diff --git
a/src/smpi/smpi_f77.c
b/src/smpi/smpi_f77.c
index
e6d9d10
..
c467cc8
100644
(file)
--- a/
src/smpi/smpi_f77.c
+++ b/
src/smpi/smpi_f77.c
@@
-28,7
+28,7
@@
static int new_comm(MPI_Comm comm) {
static MPI_Comm get_comm(int comm) {
if(comm == -2) {
return MPI_COMM_SELF;
static MPI_Comm get_comm(int comm) {
if(comm == -2) {
return MPI_COMM_SELF;
- } else if(comm
>= 0
) {
+ } else if(comm
_lookup && comm >= 0 && comm < (int)xbt_dynar_length(comm_lookup)
) {
return *(MPI_Comm*)xbt_dynar_get_ptr(comm_lookup, comm);
}
return MPI_COMM_NULL;
return *(MPI_Comm*)xbt_dynar_get_ptr(comm_lookup, comm);
}
return MPI_COMM_NULL;
@@
-123,9
+123,13
@@
void mpi_init__(int* ierr) {
void mpi_finalize__(int* ierr) {
*ierr = MPI_Finalize();
xbt_dynar_free(&op_lookup);
void mpi_finalize__(int* ierr) {
*ierr = MPI_Finalize();
xbt_dynar_free(&op_lookup);
+ op_lookup = NULL;
xbt_dynar_free(&datatype_lookup);
xbt_dynar_free(&datatype_lookup);
+ datatype_lookup = NULL;
xbt_dict_free(&request_lookup);
xbt_dict_free(&request_lookup);
+ request_lookup = NULL;
xbt_dynar_free(&comm_lookup);
xbt_dynar_free(&comm_lookup);
+ comm_lookup = NULL;
}
void mpi_abort__(int* comm, int* errorcode, int* ierr) {
}
void mpi_abort__(int* comm, int* errorcode, int* ierr) {