int tsip_transac_fsm_act(tsip_transac_t* self, tsk_fsm_action_id action_id, const tsip_message_t* message) { if(!self || !self->fsm){ TSK_DEBUG_WARN("Invalid parameter."); return -1; } return tsk_fsm_act(self->fsm, action_id, self, message, self, message); }
int tsip_transac_fsm_act(tsip_transac_t* self, tsk_fsm_action_id action_id, const tsip_message_t* message) { int ret; tsip_transac_t* safe_copy; if(!self || !self->fsm){ TSK_DEBUG_WARN("Invalid parameter."); return -1; } safe_copy = tsk_object_ref(TSK_OBJECT(self)); ret = tsk_fsm_act(self->fsm, action_id, safe_copy, message, self, message); tsk_object_unref(safe_copy); return ret; }