- MSG_process_resume(remote_host->simdata->sleeping[channel]);
- else {
- process->simdata->put_host = dest;
- process->simdata->put_channel = channel;
- while(!(task_simdata->comm))
- MSG_process_suspend(process);
- process->simdata->put_host = NULL;
- process->simdata->put_channel = -1;
- }
-
- do {
+ __MSG_process_unblock(remote_host->simdata->sleeping[channel]);
+/* else { */
+ process->simdata->put_host = dest;
+ process->simdata->put_channel = channel;
+ while(!(task_simdata->comm))
+ __MSG_process_block();
+ process->simdata->put_host = NULL;
+ process->simdata->put_channel = -1;
+/* } */
+
+ state=surf_workstation_resource->common_public->action_get_state(task_simdata->comm);
+ while (state==SURF_ACTION_RUNNING) {