From b723df623c506205c9a65b32fc0c0177e494116f Mon Sep 17 00:00:00 2001 From: Gabriel Corona Date: Mon, 4 Jul 2016 15:25:44 +0200 Subject: [PATCH] [simix] Manage s_smx_mailbox with new/delte Because it has a boost::intrusive_ptr now. --- src/simix/smx_network.cpp | 5 ++--- src/simix/smx_network_private.h | 6 +++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/simix/smx_network.cpp b/src/simix/smx_network.cpp index bf5aa8b8c1..9274071348 100644 --- a/src/simix/smx_network.cpp +++ b/src/simix/smx_network.cpp @@ -43,7 +43,7 @@ smx_mailbox_t SIMIX_mbox_create(const char *name) smx_mailbox_t mbox = (smx_mailbox_t) xbt_dict_get_or_null(mailboxes, name); if (!mbox) { - mbox = xbt_new0(s_smx_mailbox_t, 1); + mbox = new s_smx_mailbox_t(); mbox->name = xbt_strdup(name); mbox->comm_queue = new std::deque(); mbox->done_comm_queue = nullptr; // Allocated on need only @@ -62,8 +62,7 @@ void SIMIX_mbox_free(void *data) xbt_free(mbox->name); delete mbox->comm_queue; delete mbox->done_comm_queue; - - xbt_free(mbox); + delete mbox; } smx_mailbox_t SIMIX_mbox_get_by_name(const char *name) diff --git a/src/simix/smx_network_private.h b/src/simix/smx_network_private.h index 9315156a66..420e31e303 100644 --- a/src/simix/smx_network_private.h +++ b/src/simix/smx_network_private.h @@ -16,10 +16,10 @@ /** @brief Rendez-vous point datatype */ typedef struct s_smx_mailbox { - char *name; - std::deque *comm_queue; + char *name = nullptr; + std::deque *comm_queue = nullptr; boost::intrusive_ptr permanent_receiver; //process which the mailbox is attached to - std::deque *done_comm_queue;//messages already received in the permanent receive mode + std::deque *done_comm_queue = nullptr;//messages already received in the permanent receive mode } s_smx_mailbox_t; XBT_PRIVATE void SIMIX_mailbox_exit(void); -- 2.20.1