90576a435b
The issue is that the field mca_topo_base_comm_t->mtc_periods_or_edges has a different length, depending on whether the communicator is a graph or a cart. One of the comm dup functions always assumed that it was the length required by graph comms, which could lead to badness in some cases. This commit makes the legnth of that field on a comm dup be the proper length and copies the data over appropriately. I also changed the syntax of the ompi_comm_copy_topo() function to use shorter pointer notation; it made the code much easier to read and fix. This commit was SVN r18752. The following Trac tickets were found above: Ticket 1345 --> https://svn.open-mpi.org/trac/ompi/ticket/1345