]> AND Private Git Repository - loba.git/blobdiff - communicator.cpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
No return value for communicator::receiver().
[loba.git] / communicator.cpp
index 45e43a3efe389502db6a480fff843c23a6cca56a..1da6deffea6c2af314a36f0706f22fa1c82964f6 100644 (file)
@@ -155,7 +155,7 @@ int communicator::receiver_wrapper(int, char* [])
 {
     communicator* comm;
     comm = static_cast<communicator*>(MSG_process_get_data(MSG_process_self()));
 {
     communicator* comm;
     comm = static_cast<communicator*>(MSG_process_get_data(MSG_process_self()));
-    int result = comm->receiver();
+    comm->receiver();
 
     XBT_DEBUG("terminate");
     xbt_mutex_acquire(comm->receiver_mutex);
 
     XBT_DEBUG("terminate");
     xbt_mutex_acquire(comm->receiver_mutex);
@@ -163,7 +163,7 @@ int communicator::receiver_wrapper(int, char* [])
     xbt_cond_signal(comm->receiver_cond);
     xbt_mutex_release(comm->receiver_mutex);
 
     xbt_cond_signal(comm->receiver_cond);
     xbt_mutex_release(comm->receiver_mutex);
 
-    return result;
+    return 0;
 }
 
 void communicator::receiver1(msg_comm_t& comm, m_task_t& task, const char* mbox)
 }
 
 void communicator::receiver1(msg_comm_t& comm, m_task_t& task, const char* mbox)
@@ -185,7 +185,7 @@ void communicator::receiver1(msg_comm_t& comm, m_task_t& task, const char* mbox)
     }
 }
 
     }
 }
 
-int communicator::receiver()
+void communicator::receiver()
 {
     ctrl_comm = MSG_task_irecv(&ctrl_task, get_ctrl_mbox());
     data_comm = MSG_task_irecv(&data_task, get_data_mbox());
 {
     ctrl_comm = MSG_task_irecv(&ctrl_task, get_ctrl_mbox());
     data_comm = MSG_task_irecv(&data_task, get_data_mbox());
@@ -209,13 +209,10 @@ int communicator::receiver()
             receiver1(ctrl_comm, ctrl_task, get_ctrl_mbox());
         else if (finished_comm == data_comm)
             receiver1(data_comm, data_task, get_data_mbox());
             receiver1(ctrl_comm, ctrl_task, get_ctrl_mbox());
         else if (finished_comm == data_comm)
             receiver1(data_comm, data_task, get_data_mbox());
-        else {
-            XBT_ERROR("Handling unknown comm -- %p", finished_comm);
-            MSG_comm_destroy(finished_comm);
-        }
+        else
+            THROW1(0, 0, "Cannot handle unknown comm -- %p", finished_comm);
     }
     xbt_dynar_free(&comms);
     }
     xbt_dynar_free(&comms);
-    return 0;
 }
 
 // Local variables:
 }
 
 // Local variables: