Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid
authorMartin Quinson <martin.quinson@loria.fr>
Mon, 15 Aug 2016 12:35:29 +0000 (14:35 +0200)
committerMartin Quinson <martin.quinson@loria.fr>
Mon, 15 Aug 2016 12:35:29 +0000 (14:35 +0200)
1  2 
src/smpi/smpi_global.cpp

diff --combined src/smpi/smpi_global.cpp
@@@ -74,6 -74,8 +74,8 @@@ int process_count = 0
  int smpi_universe_size = 0;
  int* index_to_process_data = nullptr;
  extern double smpi_total_benched_time;
+ extern xbt_dict_t smpi_type_keyvals;
+ extern xbt_dict_t smpi_comm_keyvals;
  xbt_os_timer_t global_timer;
  MPI_Comm MPI_COMM_WORLD = MPI_COMM_UNINITIALIZED;
  MPI_Errhandler *MPI_ERRORS_RETURN = nullptr;
@@@ -98,7 -100,7 +100,7 @@@ void smpi_process_init(int *argc, char 
  {
  
    if (argc != nullptr && argv != nullptr) {
 -    smx_process_t proc = SIMIX_process_self();
 +    smx_actor_t proc = SIMIX_process_self();
      proc->context->set_cleanup(&MSG_process_cleanup_from_SIMIX);
      char* instance_id = (*argv)[1];
      int rank = xbt_str_parse_int((*argv)[2], "Invalid rank: %s");
@@@ -639,6 -641,10 +641,10 @@@ void smpi_global_destroy(
    }
  
    xbt_free(index_to_process_data);
+   if(smpi_type_keyvals!=nullptr) 
+     xbt_dict_free(&smpi_type_keyvals);
+   if(smpi_comm_keyvals!=nullptr) 
+     xbt_dict_free(&smpi_comm_keyvals);
    if(smpi_privatize_global_variables)
      smpi_destroy_global_memory_segments();
    smpi_free_static();