Skip to content

Commit 521d1f7

Browse files
committed
bug fix in processing of input arguments
1 parent 2591860 commit 521d1f7

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

init.scm

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,6 @@ static void MPI_error_handler(MPI_Comm * comm, int * errcode, ...)
123123

124124
argv[i] = NULL;
125125

126-
127126
MPI_Info_create(&info);
128127

129128
C_i_check_list (locations);
@@ -136,7 +135,7 @@ static void MPI_error_handler(MPI_Comm * comm, int * errcode, ...)
136135
if ((locc > 0) && (locv != NULL))
137136
{
138137
tail = locations;
139-
for (i = 0; i < locc; i++)
138+
for (i = 0; i < locc; i+=2)
140139
{
141140
x = C_u_i_car (tail);
142141
tail = C_u_i_cdr (tail);
@@ -164,7 +163,6 @@ static void MPI_error_handler(MPI_Comm * comm, int * errcode, ...)
164163
MPI_Info_set(info, skey, sval);
165164
locv[i] = skey;
166165
locv[i+1] = sval;
167-
168166
}
169167

170168
}
@@ -177,7 +175,7 @@ static void MPI_error_handler(MPI_Comm * comm, int * errcode, ...)
177175

178176
MPI_Info_free (&info);
179177

180-
for (i = 0; i < locc; i++)
178+
for (i = 0; i < locc; i+=2)
181179
{
182180
skey = locv[i];
183181
sval = locv[i+1];
@@ -189,8 +187,9 @@ static void MPI_error_handler(MPI_Comm * comm, int * errcode, ...)
189187
{
190188
free (sval);
191189
}
190+
locv[i] = NULL;
191+
locv[i+1] = NULL;
192192
}
193-
memset (locv, (int)NULL, locvsz);
194193
free (locv);
195194

196195
for (i = 0; i < argc; i++)
@@ -200,8 +199,8 @@ static void MPI_error_handler(MPI_Comm * comm, int * errcode, ...)
200199
{
201200
free (s);
202201
}
202+
argv[i] = NULL;
203203
}
204-
memset (argv, (int)NULL, argvsz);
205204
free (argv);
206205
}
207206
}
@@ -271,8 +270,8 @@ EOF
271270
{
272271
free (s);
273272
}
273+
argv[i] = NULL;
274274
}
275-
memset (argv, (int)NULL, argvsz);
276275
free (argv);
277276
}
278277
MPI_Errhandler_create((MPI_Handler_function *)MPI_error_handler, &hdlr);

mpi.release-info

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
(uri targz "https://github.com/iraikov/chicken-mpi/tarball/{egg-release}")
44
(uri files-list "http://code.call-cc.org/files-list?egg={egg-name};egg-release={egg-release};chicken-release={chicken-release}" old-uri)
55

6+
(release "1.17")
67
(release "1.16")
78
(release "1.15" old-uri)
89

mpi.setup

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,6 @@
4747
`(,(dynld-name "mpi") ,(dynld-name "mpi.import") )
4848

4949
; Assoc list with properties for your extension:
50-
`((version 1.16)
50+
`((version 1.17)
5151
))
5252

0 commit comments

Comments
 (0)