- if (!strcmp(process_name, "process0")){
- DEBUG2("%s: %s is the Root",name, process_name);
- for(i=1;i<communicator_size;i++){
- sprintf(spawn_name,"%s_process%d", name, i);
- sprintf(task_name,"%s_wait", spawn_name);
- comm_helper =
- MSG_process_create(task_name, spawned_recv,
- (void *) xbt_strdup(spawn_name),
- MSG_host_self());
+ if (!strcmp(process_name, "p0")) {
+ DEBUG2("%s: %s is the Root", name, process_name);
+ for (i = 1; i < communicator_size; i++) {
+ sprintf(spawn_name, "%s_p%d_%s", name, i,
+ MSG_process_get_name(MSG_process_self()));
+ sprintf(task_name, "%s_wait", spawn_name);
+ myargv = (char **) calloc(2, sizeof(char *));
+
+ myargv[0] = xbt_strdup(spawn_name);
+ myargv[1] = NULL;
+
+ comm_helper =
+ MSG_process_create_with_arguments(task_name, spawned_recv,
+ NULL, MSG_host_self(),
+ 1, myargv);