Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
fix a memory leak happening with smpi_replay
authorAugustin Degomme <degomme@idpann.imag.fr>
Fri, 30 Nov 2012 11:44:15 +0000 (12:44 +0100)
committerAugustin Degomme <degomme@idpann.imag.fr>
Fri, 30 Nov 2012 14:32:16 +0000 (15:32 +0100)
src/smpi/smpi_base.c

index a534910..5192ca3 100644 (file)
@@ -178,9 +178,10 @@ void smpi_mpi_start(MPI_Request request)
       if(request->old_type->has_subtype == 0){
         oldbuf = request->buf;
         request->detached = 1;
       if(request->old_type->has_subtype == 0){
         oldbuf = request->buf;
         request->detached = 1;
-        request->buf = malloc(request->size);
-        if (oldbuf)
+        if (oldbuf){
+          request->buf = malloc(request->size);
           memcpy(request->buf,oldbuf,request->size);
           memcpy(request->buf,oldbuf,request->size);
+        }
       }
       XBT_DEBUG("Send request %p is detached; buf %p copied into %p",request,oldbuf,request->buf);
     }
       }
       XBT_DEBUG("Send request %p is detached; buf %p copied into %p",request,oldbuf,request->buf);
     }