Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix dead assignments.
[simgrid.git] / src / smpi / colls / gather-ompi.c
index 4a7489b..7b4bd61 100644 (file)
@@ -1,3 +1,9 @@
+/* Copyright (c) 2013-2014. The SimGrid Team.
+ * All rights reserved.                                                     */
+
+/* This program is free software; you can redistribute it and/or modify it
+ * under the terms of the license (GNU LGPL) which comes with this package. */
+
 /*
  * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
  *                         University Research and Technology
@@ -9,11 +15,8 @@
  *                         University of Stuttgart.  All rights reserved.
  * Copyright (c) 2004-2005 The Regents of the University of California.
  *                         All rights reserved.
- * $COPYRIGHT$
  *
  * Additional copyrights may follow
- *
- * $HEADER$
  */
 
 #include "colls_private.h"
@@ -172,6 +175,7 @@ smpi_coll_tuned_gather_ompi_binomial(void *sbuf, int scount,
        /* other non-leaf nodes */
        free(tempbuf);
     }
+    xbt_free(bmtree);
     return MPI_SUCCESS;
 
  err_hndl:
@@ -276,7 +280,6 @@ smpi_coll_tuned_gather_ompi_linear_sync(void *sbuf, int scount,
         COLL_TUNED_COMPUTED_SEGCOUNT( (size_t)first_segment_size, typelng, 
                                       first_segment_count );
 
-        ptmp = (char *) rbuf;
         for (i = 0; i < size; ++i) {
             if (i == rank) {  
                 /* skip myself */
@@ -315,6 +318,7 @@ smpi_coll_tuned_gather_ompi_linear_sync(void *sbuf, int scount,
         
         /* wait all second segments to complete */
         ret = smpi_mpi_waitall(size, reqs, MPI_STATUSES_IGNORE);
+        if (ret != MPI_SUCCESS) { line = __LINE__; goto error_hndl; }
 
         free(reqs);
     }