X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/e45e3f28a592f4d456b6a89a8aa8e5e69f595ba1..138e6f86566611611b1115c957cae0a1c6a85a4b:/src/msg/msg_mailbox.cpp diff --git a/src/msg/msg_mailbox.cpp b/src/msg/msg_mailbox.cpp index 90d2896b24..06413a6342 100644 --- a/src/msg/msg_mailbox.cpp +++ b/src/msg/msg_mailbox.cpp @@ -18,17 +18,17 @@ msg_mailbox_t MSG_mailbox_new(const char *alias) int MSG_mailbox_is_empty(msg_mailbox_t mailbox) { - return (NULL == simcall_mbox_front(mailbox)); + return (nullptr == simcall_mbox_front(mailbox)); } msg_task_t MSG_mailbox_front(msg_mailbox_t mailbox) { - smx_synchro_t comm = simcall_mbox_front(mailbox); + simgrid::simix::Comm* comm = static_cast(simcall_mbox_front(mailbox)); if (!comm) - return NULL; + return nullptr; - return (msg_task_t) simcall_comm_get_src_data(comm); + return (msg_task_t) comm->src_data; } msg_mailbox_t MSG_mailbox_get_by_alias(const char *alias) @@ -90,7 +90,6 @@ msg_error_t MSG_mailbox_get_task_ext(msg_mailbox_t mailbox, msg_task_t *task, ms msg_error_t MSG_mailbox_get_task_ext_bounded(msg_mailbox_t mailbox, msg_task_t * task, msg_host_t host, double timeout, double rate) { - xbt_ex_t e; msg_error_t ret = MSG_OK; /* We no longer support getting a task from a specific host */ if (host) @@ -106,14 +105,12 @@ msg_error_t MSG_mailbox_get_task_ext_bounded(msg_mailbox_t mailbox, msg_task_t * XBT_WARN("Asked to write the received task in a non empty struct -- proceeding."); /* Try to receive it by calling SIMIX network layer */ - TRY { - simcall_comm_recv(MSG_process_self(), mailbox, task, NULL, NULL, NULL, NULL, timeout, rate); + try { + simcall_comm_recv(MSG_process_self(), mailbox, task, nullptr, nullptr, nullptr, nullptr, timeout, rate); XBT_DEBUG("Got task %s from %p",(*task)->name,mailbox); - if (msg_global->debug_multiple_use && (*task)->simdata->isused!=0) - xbt_ex_free(*(xbt_ex_t*)(*task)->simdata->isused); - (*task)->simdata->isused = 0; + (*task)->simdata->setNotUsed(); } - CATCH(e) { + catch (xbt_ex& e) { switch (e.category) { case cancel_error: ret = MSG_HOST_FAILURE; @@ -128,9 +125,8 @@ msg_error_t MSG_mailbox_get_task_ext_bounded(msg_mailbox_t mailbox, msg_task_t * ret = MSG_HOST_FAILURE; break; default: - RETHROW; + throw; } - xbt_ex_free(e); } if (ret != MSG_HOST_FAILURE && ret != MSG_TRANSFER_FAILURE && ret != MSG_TIMEOUT) {