+ /* destroy the surf actions associated with the Simix communication */
+ SIMIX_comm_destroy_internal_actions(action);
+
+ /* if there are requests associated with the action, then answer them */
+ if (xbt_fifo_size(action->request_list)) {
+ SIMIX_comm_finish(action);
+ }
+ else {
+ SIMIX_comm_remove_from_processes(action);
+ }
+}
+
+/**
+ * \brief Removes a communication action from the list of pending communications
+ * of both processes (if they still exist)
+ * \param action a communication action
+ */
+static void SIMIX_comm_remove_from_processes(smx_action_t action) {
+