[Spread-cvs] commit: r515 - branches/reconfig_groups_crash_bugfix/daemon

jonathan at spread.org jonathan at spread.org
Wed May 2 16:50:25 EDT 2012


Author: jonathan
Date: 2012-05-02 16:50:24 -0400 (Wed, 02 May 2012)
New Revision: 515

Modified:
   branches/reconfig_groups_crash_bugfix/daemon/configuration.c
Log:
Fix bug in new Conf_config_copy where not all fields with addprocs were copied correctly

Modified: branches/reconfig_groups_crash_bugfix/daemon/configuration.c
===================================================================
--- branches/reconfig_groups_crash_bugfix/daemon/configuration.c	2012-05-02 20:48:25 UTC (rev 514)
+++ branches/reconfig_groups_crash_bugfix/daemon/configuration.c	2012-05-02 20:50:24 UTC (rev 515)
@@ -562,15 +562,20 @@
     int i,j,p_index;
     proc p;
 
-    *dst_conf = *src_conf;
+    dst_conf->hash_code = src_conf->hash_code;
+    dst_conf->num_segments = src_conf->num_segments;
+    dst_conf->num_total_procs = src_conf->num_total_procs;
 
     for (i=0; i < src_conf->num_total_procs; i++ )
     {
-        dst_conf->allprocs[i] = src_conf->allprocs[i];
+        memcpy( &dst_conf->allprocs[i], &src_conf->allprocs[i], sizeof( proc ) );
     }
 
     for (i=0; i < src_conf->num_segments; i++ )
     {
+        dst_conf->segments[i].bcast_address = src_conf->segments[i].bcast_address;
+        dst_conf->segments[i].port = src_conf->segments[i].port;
+        dst_conf->segments[i].num_procs = src_conf->segments[i].num_procs;
         for ( j=0; j < src_conf->segments[i].num_procs; j++ )
         {
             p_index = Conf_proc_by_id_in_conf(dst_conf, src_conf->segments[i].procs[j]->id, &p);




More information about the Spread-cvs mailing list